POSIX 之條件變量(Condition Variable)、條件變量屬性(Condition Variable Attributes )

POSIX 之條件變量(Condition Variable)、條件變量屬性(Condition Variable Attributes )

0 引言

條件變量是利用線程間共享的全局變量進行同步的一種機制,主要包括兩個動作:一個線程等待"條件變量的條件成立"而掛起;另一個線程使"條件成立"(給出條件成立信號)。爲了防止競爭,條件變量的使用總是和一個互斥鎖結合在一起。本博文將詳細介紹posix condition variable的使用,本文主要內容:

  • Condition Variable Synchronization APIs
  • Condition Variable Attributes

1 Condition Variable

1.1 Condition Variable Manage APIs List Table

Condition Variable 主要的操作如下表:

函數 描述 Linux VxWorks 備註
pthread_cond_init() Initialize a Condition Variable support support
pthread_cond_destroy() Destroy a Condition Variable support support
pthread_cond_signal() Signal Condition to One Waiter support support
pthread_cond_broadcast() Broadcast Condition to All Waiters support support
pthread_cond_wait() Wait for a Condition support support
pthread_cond_timedwait() Timed Wait for a Condition support support
pthread_get_expiration_np() Get Condition Expiration Time from Delta support support

1.2 APIs詳解

1.2.1 pthread_cond_init和pthread_cond_destroy

。。。。。。詳解介紹各個api的具體用法 以及在Linux和VxWorks下的不同

2 Condition Variable Attributes

2.1 Condition Variable Attributes APIs List Table

函數 描述 Linux VxWorks 備註
pthread_condattr_init() Initialize Condition Variable Attributes Object support support
pthread_condattr_destroy() Destroy Condition Variable Attributes Object support support
pthread_condattr_getpshared() Get Process Shared Attribute from Condition Attributes Object support support
pthread_condattr_setpshared() Set Process Shared Attribute in Condition Attributes Object support support
pthread_condattr_getclock() get the clock selection condition variable attribute (ADVANCED REALTIME) support support
pthread_condattr_setclock() set the clock selection condition variable attribute (ADVANCED REALTIME) support support

2.2 APIs詳解

2.2.1 pthread_condattr_init() pthread_condattr_destroy()

。。。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章