Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> C#

C# में जांचें कि ArrayList सिंक्रनाइज़्ड (थ्रेड-सेफ) है या नहीं

ArrayList.IsSynchronized गुण इंगित करता है कि ArrayList थ्रेड-सेफ (सिंक्रनाइज़्ड) है या नहीं। मानक ArrayList false लौटाता है। सिंक्रनाइज़्ड रैपर के लिए ArrayList.Synchronized का उपयोग करें।

उदाहरण 1: दो असिंक्रनाइज़्ड ArrayLists

using System;
using System.Collections;

public class Demo
{
    public static void Main(String[] args)
    {
        ArrayList list1 = new ArrayList();
        list1.Add("A");
        list1.Add("B");
        list1.Add("C");
        list1.Add("D");
        list1.Add("E");
        list1.Add("F");
        list1.Add("G");
        list1.Add("H");
        list1.Add("I");
        Console.WriteLine("Elements in ArrayList1...");
        foreach (string res in list1)
        {
            Console.WriteLine(res);
        }
        ArrayList list2 = new ArrayList();
        list2.Add("A");
        list2.Add("B");
        list2.Add("C");
        list2.Add("D");
        list2.Add("E");
        list2.Add("F");
        list2.Add("G");
        list2.Add("H");
        list2.Add("I");
        Console.WriteLine("Elements in ArrayList2...");
        foreach (string res in list2)
        {
            Console.WriteLine(res);
        }
        Console.WriteLine("Is ArrayList synchronized? = " + list2.IsSynchronized);
    }
}

आउटपुट

Elements in ArrayList1...
A
B
C
D
E
F
G
H
I
Elements in ArrayList2...
A
B
C
D
E
F
G
H
I
Is ArrayList synchronized? = False

उदाहरण 2: सिंक्रनाइज़्ड रैपर बनाना

using System;
using System.Collections;

public class Demo
{
    public static void Main(String[] args)
    {
        ArrayList list1 = new ArrayList();
        list1.Add("One");
        list1.Add("Two");
        list1.Add("Three");
        list1.Add("Four");
        list1.Add("Five");
        Console.WriteLine("Elements in ArrayList...");
        foreach (string res in list1)
        {
            Console.WriteLine(res);
        }
        ArrayList list = ArrayList.Synchronized(list1);
        Console.WriteLine("Is ArrayList synchronized? = " + list.IsSynchronized);
    }
}

आउटपुट

Elements in ArrayList...
One
Two
Three
Four
Five
Is ArrayList synchronized? = True

IsSynchronized केवल रैपर स्थिति दर्शाता है। सिंक्रनाइज़्ड रैपर पर भी, एन्यूमरेशन थ्रेड-सेफ नहीं है जब तक कि मैन्युअल रूप से lock(list.SyncRoot) न किया जाए। उच्च प्रदर्शन थ्रेड-सेफ संग्रह के लिए System.Collections.Concurrent नामस्थान का उपयोग करें।

  1. - C# में ArrayList में आइटम कैसे जोड़ें?

    ArrayList C# में एक नॉन-जेनेरिक प्रकार का कलेक्शन है जो डायनामिकली रिसाइज़ होता है।आइए देखें कि C# में ArrayList को कैसे इनिशियलाइज़ करें:ArrayList arr = new ArrayList();ArrayList में एक आइटम जोड़ें:ArrayList arr1 = new ArrayList(); arr1.Add(30); arr1.Add(70);आइए C# में ArrayList को लागू करने का पूर

  1. - C# प्रोग्राम: वर्तमान थ्रेड की स्थिति जांचें

    C# में वर्तमान थ्रेड की स्थिति जांचने के लिए IsAlive प्रॉपर्टी का उपयोग करें।सबसे पहले, थ्रेड के बारे में जानकारी प्रदर्शित करने के लिए currentThread प्रॉपर्टी का उपयोग करें:Thread thread = Thread.CurrentThread;अब थ्रेड की स्थिति जांचने के लिए thread.IsAlive प्रॉपर्टी का उपयोग करें:thread.IsAliveउदा

  1. - Java में ArrayList.clear() और ArrayList.removeAll() में अंतर

    Java में ArrayList क्लास List इंटरफेस का एक आकार-परिवर्तनीय सरणी कार्यान्वयन है। यह null मानों की अनुमति देता है। इस क्लास की clear() विधि वर्तमान List ऑब्जेक्ट से सभी तत्वों को हटा देती है। उदाहरण import java.util.ArrayList; public class ClearExample { public static void main(String[] args){ //Arra