如果您有一些代码块要阻止在退出和清理对象时执行,是否可以使用锁来阻止执行?
Monitor.TryEnter(cleanupLock, ref acquiredLock);
Run Code Online (Sandbox Code Playgroud)
TryEnter可用于确保代码不被执行,并且由于它不等待锁定,因此不会出现死锁.
另一个线程在确定是否需要关闭时会抓住锁.
Monitor.Enter(cleanupLock);
Run Code Online (Sandbox Code Playgroud)
如果清理线程从不调用
Monitor.Exit(cleanupLock);
Run Code Online (Sandbox Code Playgroud)
这会导致问题吗?
我的WinForm C#应用程序上的MouseEvents有问题.我希望鼠标点击我的应用程序.如何确定点击了哪个控件?(我是初学者C#)