1
確保一個代碼區域只能由一個pthread執行的最簡單方法是什麼?POSIX線程 - 只做一次
假設有n
線程(n
不等於1)
// do this once
int x;
x = some_function();
printf("%d\n", x);
我是否使用共享變量和阻擋?讓所有變量將其線程ID(?)分配給共享變量,然後寫入變量的最後一個線程可以是主線程?然後在程序的後面,你可以檢查線程ID對共享變量?
非常感謝。
非常感謝。
如何獲取我想要被調用一次的函數的返回值?我將編輯問題清楚...謝謝:)。 – ale 2012-07-20 13:58:05
[man](http://pubs.opengroup.org/onlinepubs/009695399/functions/pthread_once.html)說:_第一次調用pthread_once()...應該調用沒有參數的init_routine。使用相同的once_control隨後調用pthread_once()不應調用init_routine._ **有必要使用互斥_wrap _wrap pthread_once() – user454322 2014-08-29 18:07:36