c - 主函数和 pthread 中其他线程之间的互斥锁优先级

标签 c multithreading pthreads

我们可以通过pthread_attr_t设置线程优先级,这是pthread_create中的第二个参数,但是我们不能通过pthread_attr_t来设置线程优先级给main函数。

如果主函数和其他线程都在等待互斥锁,哪个线程会获得互斥锁?

最佳答案

您无法预测许多线程中的哪个线程将首先获得互斥锁,无论它们的优先级如何。

优先级高的线程会运行的更频繁,也更可能获得锁,绝对不能保证。

此外,如果您曾经设计过依赖线程以特定顺序获取锁的代码,那么您肯定是在错误地设计程序。

关于c - 主函数和 pthread 中其他线程之间的互斥锁优先级,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24073815/

相关文章:

C 编程检查缓冲区中的消息

c - BST 的插入迭代方法 (C)

c - posix系统如何支持unicode?

perl - 将变量插入数组是线程安全操作吗?

c - 在 for 循环中一遍又一遍地创建和连接线程 (C)

c - strerror_r 示例

c - C中的双函数间接

c# - WPF框架在后台线程中使用Dispatcher.CurrentDispatcher,导致内存泄漏

c - Pthreads 在执行时更新全局 2D 数组段错误

javascript - 在 Node.js 中休眠