在Windows中使用PTHREAD的Mutex
Mutex with PTHREAD in Windows?
当线程调用pthread_exit(NULL)终止其执行时,其互斥对象是否空闲?
来自pthread_exit
:的文档
pthread_exit()函数将终止调用线程,并使值value_ptr可用于任何与终止线程的成功联接。任何已推送但尚未弹出的取消清除处理程序都应按推送后执行的相反顺序弹出。在执行完所有取消清除处理程序后,如果线程有任何特定于线程的数据,则应按未指定的顺序调用适当的析构函数。线程终止不会释放任何应用程序可见的进程资源,包括但不限于互斥和文件描述符,也不会执行任何进程级清理操作,包括但并不限于调用任何可能存在的atexit()例程。
所以不,你的互斥锁不会被释放。
相关文章:
- 如何在没有死锁和/或争用的情况下正确使用 std::mutex C++?
- std::mutex 如何防止线程修改?
- 在 c++11 中为 pthread 设置调度参数
- 如果不包含 pthread,为什么 GCC 的线程标准库实现会抛出异常?
- DRD 报告"conflicting load" std::mutex::lock 上的错误
- 是否需要 mutex() 来安全地同时访问具有 2 个线程的数组的不同元素?
- pthread只有在线程数量较少时才可以正常工作
- std::atomic 和 std::mutex 的相对性能
- 如何解决"'mutex' in namespace 'std' does not name a type"?
- pthread执行时间比顺序执行时间差
- 使用 -pthread 如何不违反 ODR 规则?
- 使用 pthread 的多线程
- std::lock_guard 怎么可能比 std::mutex::lock() 更快?
- 当"std::lock_guard<std::mutex>"对象没有名称时的不同行为
- std::mutex::lock() 产生奇怪(和不必要的)ASM 代码
- 使用 std::mutex 保护环路
- 销毁 pthread 互斥体和 C++ 中的取消初始化顺序
- 在哪里放置pthread Mutex和con var,以确保激活所有功能
- 在Windows中使用PTHREAD的Mutex
- PThread Mutex Lock & Unlock on Stack