FileSystemWatcher
,它负责继续观察XML文件,并通知XML文件是否有任何变化(以便我们可以获得新的计划值)。这个FileSystemWatcher
通过设置名为AutoResetEvent
的{{1}}来通知。问题:完成预定的文件传输后,我想将该线程置于等待状态,直到满足以下两个条件之一:
(a)中。到达下一个文件传输计划日期
(b)中。或者_waitTillXmlChanges
已通知.XML文件中的更改
如何让我的文件传输线程等待上述两个条件(两个FileSystemWatcher
等待)并继续,如果其中任何一个是AutoResetEvent
?
答案 0 :(得分:3)
您可以使用WaitHandle.WaitAny(handles)
,如下所述:https://msdn.microsoft.com/en-us/library/tdykks7z(v=vs.110).aspx
int eventNr = WaitHandle.WaitAny(new WaitHandle[]{autoResetEvent1, autoResetEvent2});