了pthread_exit問題,我有一個結構返回結構
typedef struct something_t {
int a;
int b;
} VALUES;
在我的線程函數我做
VALUES values;
values.a = 10;
values.b = 11;
pthread_exit((void*)&values);
我嘗試做
VALUES values;
pthread_join(thread, (void*)&values);
printf("A: %d\B: %d\n", values.a, values.b);
我收到的值接收每次都很奇怪。 我很困惑如何接收我最終在線程中創建的值。我想在C中學習線程,看起來好像我已經掌握了它,但是我不能返回值。有沒有辦法?感謝任何人的幫助。
令人驚歎!非常感謝,我沒有意識到堆棧會在每個新線程的末尾被轉儲,但是我注意到一個新的內存被分配給了每個線程中的全局變量而不是全局變量。 – Quillion