我正在用C开发一个多线程的Unix应用程序。是否有一种简单的方法来获取同时活动线程的数量?我不想编写代码来跟踪活动线程的数量,如果库已经可以为我完成的话! : - )
我正在使用POSIX pthreads,我正在尝试为Unix和类Unix系统编写尽可能可移植的代码。
答案 0 :(得分:6)
不,不是在pthreads 本身。 POSIX线程尝试仅指定基元或基本实用程序构造,并considers even pthread_join
a convenience function, not a primitive。
某些库可能会提供不可移植的解决方案(例如,在HP-UX的名称中查找_np
),但对于pthreads 本身,您可以自己使用
答案 1 :(得分:1)
你可以猜测在构造函数/析构函数中保留它的数量,但要确保你同时处理它以避免竞争条件。