我要實現以下邏輯:事件養在另一個線程
private static AutoResetEvent _autoResetEvent = new AutoResetEvent(false);
static void Main(string[] args)
{
var someObjectInstance = new SomeObject();
someObjectInstance.SomeEvent += SomeEventHandler;
_autoResetEvent.WaitOne();
//...
}
static void SomeEventHandler()
{
_autoResetEvent.Set();
}
所以主要的方法應等到SomeEvent被稱爲第一次。據我所知_autoResetEvent.WaitOne阻止線程,所以SomeEvent應該在另一個線程中引發。但我怎麼能保證呢?