AutoResetEvent用户多个线程传递共享信息:
public class AutoReset
{
static AutoResetEvent autoR = new AutoResetEvent(false);
static string data ="";
public void Main()
{
Task.Run(() =>
{
GetDataServer();
});
autoR.WaitOne();
Console.WriteLine(data);
Console.ReadKey();
}
public void GetDataServer()
{
Thread.Sleep(4000);
data = "获得数据";
autoR.Set();
}
}
autoR.WaitOne()会等待autoR.Set()执行完了才会执行。另外可以结合线程安全字典集合ConcurrentDictionary来用。