multithreading - 线程中的临界区是什么?

标签 multithreading terminology

请有人用例子简单地告诉我临界区的意思是什么?用简单的语言

最佳答案

critical section是需要在没有外部干扰的情况下执行的一段代码 - 即没有另一个线程可能影响/受该部分内的“中间”状态影响。

例如,预订系统在预订某物时可能有一个关键部分,因为它需要检查该项目是否可用,然后将其标记为不再可用,而不需要其他一些尝试在预订房间时更改该状态的房间。中间。

因此,一段代码的临界区是一次只允许一个线程执行的地方,以防止出现竞争条件之类的情况。

关于multithreading - 线程中的临界区是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2482957/

相关文章:

android - 避免内存不足错误的最佳方法 - Android

C# 在线程完成当前函数循环后使用按钮停止线程

c++ - "Direct"与 "virtual"调用虚函数

iphone - 什么是事件循环或运行循环?

language-agnostic - 柯里化(Currying)和部分应用有什么区别?

cloud - 云计算和网格计算有什么区别?

c# - .NET 线程问题

Java 线程对象与运行线程

python - 这怎么能叫引用传递呢?

multithreading - 我正在运行哪个 openmp 时间表?