1
在C編程語言中,爲什麼我們需要一個特殊的sem_t類型來定義信號量?難道不是一個整數嗎?sem_t是如何定義的?函數sem_post和sem_wait是如何實現的?編輯:像GNU C庫的示例實現將是偉大的。sem_t的結構和信號量的實現
在C編程語言中,爲什麼我們需要一個特殊的sem_t類型來定義信號量?難道不是一個整數嗎?sem_t是如何定義的?函數sem_post和sem_wait是如何實現的?編輯:像GNU C庫的示例實現將是偉大的。sem_t的結構和信號量的實現
信號量是操作系統內核管理的對象,所以sem_t將是操作系統特有的,因爲它們也必須調用OS內核。
通常,信號量由任何等待線程的單元計數和隊列來實現。
是不是在用戶空間中實現的Linux中的信號量(即一個具有sem_wait,sem_post ...)? – PaulDaviesC
'sem_t'類型是故意不確定的,因爲它取決於具體實現如何實現它。如果你想了解_one_實現,你可以將源代碼下載到[GNU C庫](http://www.gnu.org/software/libc/)並自己閱讀源代碼。 –