gpt4 book ai didi

c++ - 关键部分所有权

转载 作者:搜寻专家 更新时间:2023-10-31 00:47:51 26 4
gpt4 key购买 nike

如果临界区锁当前由一个线程拥有,而其他线程正试图拥有这个锁,那么拥有该锁的线程以外的所有线程都会进入等待队列以等待释放锁。

当初始拥有线程释放临界区锁时,等待队列中的线程之一将被选择运行并给予临界区锁以允许线程运行。

如何选择下一个要运行的线程,因为不能保证第一个运行的线程将是线程的所有者。

如果线程不是以 FIFO 方式提供服务,那么如何从等待队列中选择下一个拥有者线程?

最佳答案

下一个获取临界区的线程是非确定性选择的。你唯一应该关心的是关键部分是否被公平地实现,即没有线程无限长地等待轮到它。如果您需要按特定顺序运行线程,则必须自己实现。

关于c++ - 关键部分所有权,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3359920/

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