gpt4 book ai didi

multithreading - 什么是互斥体?

转载 作者:行者123 更新时间:2023-12-03 03:53:43 26 4
gpt4 key购买 nike

互斥锁是一个经常用于解决多线程问题的编程概念。我向社区提出的问题:

什么是互斥体以及如何使用它?

最佳答案

当我在工作中进行激烈的讨论时,我会使用一只橡皮鸡,我将它放在办公 table 上以应对这种情况。拿着鸡的人是唯一可以说话的人。如果你不握住鸡,你就无法说话。你只能表明你想要鸡,等拿到了再说话。发言完毕后,您可以将鸡交还给主持人,主持人再将鸡交给下一个发言的人。这确保了人们不会互相争吵,并且也有自己的交谈空间。

将 Chicken 替换为 Mutex,将 person 替换为线程,基本上就有了互斥体的概念。

当然,不存在橡胶互斥体这样的东西。只有橡皮鸡。我的猫曾经有一只橡胶老鼠,但它们把它吃了。

当然,在使用橡皮鸡之前,您需要问自己是否真的需要 5 个人在一个房间里,并且让一个人在房间里自己完成所有工作不是更容易吗?实际上,这只是扩展类比,但你明白了。

关于multithreading - 什么是互斥体?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34524/

26 4 0