C# | Check if Hashtable is synchronized (thread safe)

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:

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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");
    }
}

chevron_right


Output:

has1 is Not Synchronized.
smyTable is Synchronized.

Example 2:

filter_none

edit
close

play_arrow

link
brightness_4
code

// 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);
    }
}

chevron_right


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:



My Personal Notes arrow_drop_up

Check out this Author's contributed articles.

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.