线程中的关键部分是什么?

Red*_*wan 5 multithreading terminology

请有人可以通过示例简短地告诉我关键部分的含义是什么?用简单的语言

Amb*_*ber 10

临界区是一个代码段,如果没有外界干扰要被执行的需要-即,没有其他线程潜在地影响/受着部内的“中间”状态。

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

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