sách gpt4 ăn đã đi

c# - 如果没有匹配的 Monitor.Exit,Monitor.Enter 会发生什么情况?

In lại 作者:太空狗 更新时间:2023-10-29 20:00:44 43 4
mua khóa gpt4 giày nike

如果您想在退出和清理对象时阻止执行某些代码块,是否可以使用锁来阻止执行?

Monitor.TryEnter(cleanupLock, ref acquiredLock);

TryEnter 可用于确保代码不被执行,并且由于它不等待锁定,因此不会出现死锁。

另一个线程会在确定是时候关闭时获取锁。

Monitor.Enter(cleanupLock);

如果清理线程从不调用

Monitor.Exit(cleanupLock);

这会造成问题吗?

câu trả lời hay nhất

是的,不为成功的 Monitor.TryEnter hoặc Monitor.Enter gọi Monitor.Exit 是导致死锁的捷径应用。您可能能够让它在非常有限的场景中工作,但最终代码或场景会改变,这回来咬你。只是不要这样做。

关于c# - 如果没有匹配的 Monitor.Exit,Monitor.Enter 会发生什么情况?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2313253/

43 4 0
Chứng chỉ ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com
Xem sitemap của VNExpress