我有一个主线程,它通过一个实现基于事件的异步模式(http://msdn.microsoft.com/en-us/library/ms228969.aspx)的类启动一些工作线程。不幸的是,一旦主线程完成了工作线程的设置,它就会退出。
我希望主线程无限期地等待,直到anEventHandler
调用该方法,然后处理该方法。无限期地asyncevents
监听事件直到被取消,所以他们可能会anEventHandler
在完成之前多次调用该方法。
注意:没有相关的 GUI,我只是使用这种模式。
public static void Main(String[] args) {
AsyncEventClass asyncevent = new AsyncEventClass();
// setup event handling
asyncevent.Events += new EventsHandler(anEventHandler);
// start event monitoring threads
asyncevent.monitorAsync(1);
asyncevent.monitorAsync(2);
asyncevent.monitorAsync(3);
System.Console.WriteLine("The main thread now ends. :(");
}
所有在线示例都使用System.Console.ReadLine()
,但这在生产代码中似乎是一个糟糕的主意。