在C#中,BlockingCollection
是一个线程安全的集合类,它可以用于在生产者和消费者线程之间传递数据。要定义一个泛型集合,您需要指定一个类型参数,该参数将作为集合中元素的类型。以下是如何定义一个泛型BlockingCollection
的示例:
using System; using System.Collections.Concurrent; class Program { static void Main() { // 定义一个整数类型的泛型BlockingCollection BlockingCollectionmyBlockingCollection = new BlockingCollection (); // 添加元素到集合 myBlockingCollection.Add(1); myBlockingCollection.Add(2); myBlockingCollection.Add(3); // 从集合中移除并获取元素 int item = myBlockingCollection.Take(); Console.WriteLine("Removed item: " + item); // 检查集合是否为空 bool isEmpty = myBlockingCollection.IsEmpty(); Console.WriteLine("Is collection empty? " + isEmpty); } }
在这个示例中,我们定义了一个整数类型的泛型BlockingCollection
,并向其中添加了一些元素。然后,我们使用Take()
方法从集合中移除并获取一个元素,并使用IsEmpty()
方法检查集合是否为空。