Hashtable.IsSynchronized Property is used to get a value indicating whether access to the Hashtable is synchronized(thread-safe).
Syntax:
public virtual bool IsSynchronized { get; }
Return Value: This property return true if access to the Hashtable is synchronized (thread-safe), otherwise it returns false. The default is false.
Below programs illustrate the use of above-discussed property:
Example 1:
// C# code to check if Hashtable // Is Synchronized or not using System;
using System.Collections;
class GFG {
// Driver code
public static void Main()
{
// create and initialize Hashtable
// using Add() method
Hashtable has1 = new Hashtable();
has1.Add( "1" , "Welcome" );
has1.Add( "2" , "to" );
has1.Add( "3" , "geeks" );
has1.Add( "4" , "for" );
has1.Add( "5" , "geeks" );
// Creates a synchronized
// wrapper around the Hashtable.
Hashtable smyTable = Hashtable.Synchronized(has1);
// Displays the synchronization
// status of both Hashtables.
Console.WriteLine( "has1 is {0}." , has1.IsSynchronized ?
"Synchronized" : "Not Synchronized" );
Console.WriteLine( "smyTable is {0}." , smyTable.IsSynchronized ?
"Synchronized" : "Not Synchronized" );
}
} |
Output:
has1 is Not Synchronized. smyTable is Synchronized.
Example 2:
// C# code to check if Hashtable // Is Synchronized or not using System;
using System.Collections;
class GFG {
// Driver code
public static void Main()
{
// Creating a Hashtable
Hashtable myTable = new Hashtable();
// Adding elements in Hashtable
myTable.Add( "G" , "Geeks" );
myTable.Add( "C" , "C#" );
myTable.Add( "D" , "Data Structures" );
myTable.Add( "Q" , "Quiz" );
// Checking if Hashtable is
// synchronized (thread safe)
Console.WriteLine(myTable.IsSynchronized);
}
} |
Output:
False
Note: A Hashtable can support one writer and multiple readers concurrently. To support multiple writers, all operations must be done through the wrapper returned by the Synchronized method.
Reference: