Este método se usa para devolver una nueva Cola que envuelve la cola original y es segura para subprocesos. El contenedor devuelto por este método bloquea la cola antes de que se realice una operación para que se realice de manera segura para subprocesos.
Sintaxis:
System.Collections.Queue estático público sincronizado (cola System.Collections.Queue);
Valor devuelto: un contenedor de cola que está sincronizado (seguro para subprocesos).
Excepción: este método dará ArgumentNullException si la cola es nula.
Los siguientes programas ilustran el uso del método mencionado anteriormente:
Ejemplo 1:
// C# code to illustrate the // Queue.Synchronized() Method using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a Queue Queue myQueue = new Queue(); // Inserting the elements into the Queue myQueue.Enqueue("C"); myQueue.Enqueue("C++"); myQueue.Enqueue("Java"); myQueue.Enqueue("C#"); myQueue.Enqueue("HTML"); myQueue.Enqueue("CSS"); // Creates a synchronized // wrapper around the Queue Queue sq = Queue.Synchronized(myQueue); // Displays the synchronization // status of both ArrayList Console.WriteLine("myQueue is {0}.", myQueue.IsSynchronized ? "Synchronized" : "Not Synchronized"); Console.WriteLine("sq is {0}.", sq.IsSynchronized ? "Synchronized" : "Not Synchronized"); } }
Producción:
myQueue is Not Synchronized. sq is Synchronized.
Ejemplo 2:
// C# code to illustrate the // Queue.Synchronized() Method using System; using System.Collections; class GFG { // Driver code public static void Main() { // Creating a Queue Queue myQueue = new Queue(); // Inserting the elements into the Queue myQueue.Enqueue("Geeks"); myQueue.Enqueue("for"); myQueue.Enqueue("Geeks"); myQueue.Enqueue("Noida"); myQueue.Enqueue("Sector"); myQueue.Enqueue("142"); // it will give error as // the parameter is null Queue smyList = Queue.Synchronized(null); } }
Error de tiempo de ejecución:
Excepción no controlada:
System.ArgumentNullException: el valor no puede ser nulo.
Nombre del parámetro: cola
Referencia:
Publicación traducida automáticamente
Artículo escrito por Kirti_Mangal y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA