我做這個創建2個線程具有相同的線程ID:pthreads:如果我使用相同的線程ID創建線程,會發生什麼情況?
pthread_t pt;
int rc1, rc2, t1, t2;
t1 = 0;
t2 = 1;
rc1 = pthread_create(&pt, NULL, func(), (void*)&t1);
rc2 = pthread_create(&pt, NULL, func(), (void*)&t2);
func()
只是打印傳遞的參數
我發現些什麼是輸出可以是任何的0
然後1
或1
然後0
。這裏真的發生了什麼?無論如何,這種情況與使用兩個pthread_t
值不同嗎?
使用兩個'pthread_t'對象的區別在於,在這種情況下,您無法使用第一個線程進行連接。 – EOF