我正在编写一段代码,我想对系统中的每个线程执行一个操作,除了(可能)一个指定的线程。我想做点什么:
void do_something_to_all_but(pthread_t except = PTHREAD_NULL) {
for (pthread_t tid : myThreads)
{
if (pthread_equal(tid, except)) continue;
do_something(tid);
}
}
但是,我(目前尚未)找到适用于PTHREAD_NULL
的值。我知道(至少在Linux中)pthread_t
被定义为一个不透明的无符号long int(可能是为了伪装内部表示),但我希望有一种(最好是可移植的)方式来指定{{1}保证不与任何有效pthread_t
值进行比较的值。