0
我想知道爲什麼下面的代碼給出了意想不到的輸出:a
可以得到110 ...!pthread和條件變量
pthread_t th[nbT];
void * func(void *d)
{
while(a<100)
{
pthread_mutex_lock(&l);
cout <<a <<" in thread "<<pthread_self()<<"\n";
a+=1;
pthread_mutex_unlock(&l);
}
return NULL;
}
int main(int argc, const char* argv[])
{
for(int i=0;i<nbT;i++)
pthread_create(&(th[i]), NULL, func, NULL);
for(int i=0;i<nbT;i++)
pthread_join(th[i],NULL);
}
什麼是NBT設置? – vdbuilder
@vdbuilder設置爲16 – Sara
我應該使用等待條件嗎? – Sara