APUE讀書筆記 第十二章 執行緒控制

2021-08-07 13:52:14 字數 697 閱讀 6306

初始化、銷毀屬性物件,每個屬性都有 從屬性物件中獲取屬性值、設定屬性值兩個個函式

實現執行緒分離的兩種方法:(1)使用pthread_detach函式(2)修改pthread_attr_t結構中的detachstate屬性(使用pthread_attr_setdetachstate函式),讓執行緒一開始就處於分離狀態

執行緒分離後中無法獲取該執行緒的終止狀態,該執行緒退出時它所佔的資源由作業系統**

如果呼叫pthread_attr_destory失敗,必須銷毀剛剛建立的執行緒,也許該執行緒已經開始執行。最壞情況,如果pthread_attr_init已經分配了記憶體空間,就會有少量的記憶體洩露,如果pthread_attr_init成功地對執行緒屬性進行了初始化,之後的pthread_attr_destory清理工作失敗,那麼將沒有任何補救措施,因為執行緒屬性結構對應用程式是不透明的

stackaddr被定義為棧的最低記憶體位址,對於棧是從高位址向低位址方向增長的處理器結構來說,stackaddr屬性將是棧的結尾位置

如果修改了stackaddr,系統就認為我們將自己管理棧,進而使棧警戒緩衝區機制無效,等同於把guardsize設定為0

如果乙個函式可以在相同的時間點被多個執行緒安全地呼叫(可重入),就稱該函式是執行緒安全的

執行緒在取消請求發出後還是繼續執行,知道執行緒到達某個取消點,取消點是執行緒檢查它是否被取消的乙個位置

c primer第十二章讀書筆記

本章主要講解new運算子在各種情況下的使用注意事項。c 使用new和delete運算子來動態控制記憶體。一 關於靜態成員 1 靜態成員屬於類,不屬於物件,即在多個物件中只有乙個靜態成員物件副本。2 靜態資料成員在類中宣告,在包含類方法的檔案中初始化。但如果靜態成員是const整型型別或者列舉型別,則...

第十二章 執行緒控制

1.執行緒屬性 int pthread attr init pthread attr t attr int pthread attr destroy pthread attr t attr int pthread attr getdetachstate const pthread attr t re...

《重構》讀書筆記12(第十二章完結)

互為逆重構。子類中有重複 就可以考慮上移到父類,而父類中的函式如果只與個別子類有關就可以下移。互為逆操作。子類有類似字段可以考慮上移到父類,父類的字段只在被個別子類用到可以考慮下移。其實和函式上移差不多,只是建構函式比較特殊專門拿出來說。互為逆重構。在用型別碼來區分時不妨引入子類,兩種引入方式 一種...