gpt4 book ai didi

multithreading - “synchronization primitive”的定义

转载 作者:行者123 更新时间:2023-12-03 09:22:08 27 4
gpt4 key购买 nike

术语“同步原语”到底是什么意思?例如:互斥锁,关键部分,等待计时器,事件,监视器,条件变量,信号量。它们都是同步原语吗?我还没有列出其他同步原语吗?这些是有效的问题吗?

最佳答案

同步原语是平台(例如操作系统)为支持线程或进程同步而向其用户提供的简单软件机制。它们通常是使用较低级的机制(例如原子操作,内存屏障,自旋锁,上下文切换等)构建的。

互斥量,事件,条件变量和信号量都是同步原语。共享锁和排他锁也是如此。 Monitor通常被认为是高级同步工具。这个对象保证使用其他同步原语(通常带有条件变量的排他锁来支持等待和发信号)对其方法进行互斥。在某些情况下,将监视器用作构建块时,它也被视为同步原语。

关键部分不是同步原语。它是执行路径的一部分,必须对其进行保护,以防止并发执行,以维护某些不变性。您需要使用一些同步原语来保护关键部分。

关于multithreading - “synchronization primitive”的定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8017507/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com