ForEachItem.IsSynchronized Propiedad
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Obtiene un valor booleano que indica si el acceso a la colección está sincronizado (seguro para subprocesos).
public:
property bool IsSynchronized { bool get(); };
public bool IsSynchronized { get; }
member this.IsSynchronized : bool
Public ReadOnly Property IsSynchronized As Boolean
Valor de propiedad
True si el acceso a la colección está sincronizado (seguro para subprocesos); de lo contrario, false. El valor predeterminado es false.
Implementaciones
Ejemplos
ArrayList
es una clase de .NET Framework que hereda e implementa la IsSynchronized
propiedad . En el ejemplo de código siguiente se muestra cómo sincronizar un , ArrayList
determinar si se ArrayList
sincroniza y se usa un objeto sincronizado ArrayList
.
using System;
using System.Collections;
public class SamplesArrayList
{
public static void Main()
{
// Creates and initializes a new ArrayList.
ArrayList myAL = new ArrayList();
myAL.Add( "The" );
myAL.Add( "quick" );
myAL.Add( "brown" );
myAL.Add( "fox" );
// Creates a synchronized wrapper around the ArrayList.
ArrayList mySyncdAL = ArrayList.Synchronized( myAL );
// Displays the sychronization status of both ArrayLists.
Console.WriteLine( "myAL is {0}.", myAL.IsSynchronized ? "synchronized" : "not synchronized" );
Console.WriteLine( "mySyncdAL is {0}.", mySyncdAL.IsSynchronized ? "synchronized" : "not synchronized" );
}
}
Imports System
Imports System.Collections
Public Class SamplesArrayList
Public Shared Sub Main()
' Creates and initializes a new ArrayList.
Dim myAL As ArrayList = New ArrayList()
myAL.Add("The")
myAL.Add("quick")
myAL.Add("brown")
myAL.Add("fox")
' Creates a synchronized wrapper around the ArrayList.
Dim mySyncdAL As ArrayList = ArrayList.Synchronized(myAL)
' Displays the sychronization status of both ArrayLists.
Console.WriteLine("myAL is {0}.", myAL.IsSynchronized ? "synchronized" : "not synchronized")
Console.WriteLine("mySyncdAL is {0}.", mySyncdAL.IsSynchronized ? "synchronized" : "not synchronized")
End Sub
End Class
Salida del ejemplo:
myAL no está sincronizado.
mySyncdAL está sincronizado.
Comentarios
Implementa ICollection.IsSynchronized. Si una colección es segura para subprocesos, la IsSynchronized propiedad devuelve true
y el programador no tiene que hacer nada para mantener el subproceso de colección seguro.
Si la propiedad devuelve false
, la propiedad SyncRoot devuelve un objeto que se puede usar con la palabra clave lock de C#. Para obtener más información, vea ICollection.IsSynchronized.