标签: c# multithreading locking
我有一个案例,我希望在函数调用中获取(锁定)资源,但是在回调(不同的线程)中发出了进程结束的信号。 (资源是外部的:基本上,某个总线在我启动时会变忙,并且在回调时再次释放。)
对于锁定/关键部分,这根本不可能。我也试过Mutex,但只得到异常,可能是因为我在另一个帖子中发布了。
这里有什么选择?
似乎我可以
更新:我刚刚发现了信号量,这似乎符合我的需要。我会问任何人,以防有人有更好的想法/其他人也认为这有用。
答案 0 :(得分:2)
解决问题的一种简单方法是使用AutoResetEvent:在线程中等待它,并通知在另一个线程中释放锁。
AutoResetEvent