C++ 教程 - 09 多線程處理

文章目錄

  • thread標準庫
  • pthread庫

thread標準庫

  • C++ 11 后添加了新的標準線程庫 std::thread 類,
  • 需引入頭文件<thread>
  • 聲明即創建線程對象,如 thread th1; 調用無參構造,生成一個空的線程對象;
  • thread th(callable, args),傳入調用函數及參數;
    • callable,可為函數;
    • callable,可為可調用對象;
    • callable,可為lambda 表達式(無名函數)
  • g++編譯時,指定 -std=c++11;
在這里插入代碼片

?

pthread庫

  • linux下使用pthread庫創建子線程;
  • 需包含頭文件<pthread.h>,且編譯時鏈入libpthread.so動態庫;
    • pthread_t 線程id類型;
    • pthread_create(&curThID, attr, funcName, void* args) 創建線程并執行,成功返回0,并將線程id存入curThID變量地址; attr線程對象的屬性(可NULL); funcName為返回void* 且參數為void*的函數
    • 默認為守護線程,主線程結束時,不管子線程有沒有結束,均都隨主線程一起退出;
    • pthread_exit(NULL) ,在主線程中等待子線程執行結束;
    • pthread_attr_t 線程對象屬性類型;
    • pthread_attr_init(&attr) 線程對象屬性初始化;
    • pthread_attr_delete(attr) 線程對象屬性刪除;
    • pthread_join(thId, status) 連接線程,順序執行;
    • pthread_detach() 分離線程;

?

在這里插入代碼片

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/38756.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/38756.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/38756.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

VL31N BAPI:GN_DELIVERY_CREATE創建內向交貨單同時批次拆分

翻到之前寫的測試代碼&#xff0c;記錄一下&#xff0c;用于創建DN的同時就進行批次拆分&#xff0c;不需要再調用變更的BAPI再去修改一次。 REPORT ZTEST_VL31N_BATCH_SPLIT.DATA:GS_VBSK_I TYPE VBSK, "構造:販売伝票ヘッダINGS…

2023-2024華為ICT大賽中國區 實踐賽云賽道 全國總決賽 理論部分真題

Part 1 大數據模塊(3題)&#xff1a; 1、以下關于特征選擇中的互信息法描述中&#xff0c;理解正確的是哪些?(多選題) A.互信息法是從信息熵的角度分析特征和輸出值之間的關系評分 B.在Python工具的sklearn模塊中&#xff0c;可使用mutual_info_classif(分類)和mutual_info…

AI智能在Type-C領域的應用

隨著科技的飛速發展&#xff0c;Type-C接口憑借其卓越的性能和廣泛的應用場景&#xff0c;已成為現代電子設備中不可或缺的一部分。而AI智能技術的興起&#xff0c;為Type-C領域帶來了革命性的變革&#xff0c;推動了其功能的進一步完善和應用領域的拓展。本文將探討AI智能在Ty…

用技術手段有效應對CC攻擊

在網絡安全領域&#xff0c;CC攻擊&#xff08;Challenge Collapsar&#xff0c;即HTTP Flood攻擊的一種&#xff09;是一種常見的分布式拒絕服務&#xff08;DDoS&#xff09;攻擊手段&#xff0c;它通過大量合法的HTTP請求耗盡服務器資源&#xff0c;導致正常用戶訪問緩慢甚至…

【cocos2dx】【c++】【游戲開發】舊題新說,計算兩個日期相差幾天,在指定的天數彈出相應的彈窗

【cocos2dx】【c】計算兩個日期相差幾天&#xff0c;在指定的天數彈出相應的彈窗 設備/引擎&#xff1a;Mac&#xff08;11.6&#xff09;/Mac Mini 開發工具&#xff1a;Xcode&#xff08;15.0.1&#xff09; 開發需求&#xff1a;計算兩個日期相差幾天&#xff0c;在指定的…

中文翻譯老撾語只推薦一個神器《老撾語翻譯通》App,老撾語口語發音練習,支持老撾文OCR識別提取文字!

出國旅游去探索東南亞的神秘國家&#xff1a;老撾&#xff0c;不會老撾語怎么辦&#xff1f;不用怕&#xff0c;下載《老撾語翻譯通》App幫助你把中文翻譯成老撾語。 功能亮點&#xff1a; 實時翻譯&#xff1a;實時把中文翻譯成老撾語&#xff0c;老撾語單詞或者句子均可均可…

typescript學習回顧(三)

今天繼續來分享ts的相關概念&#xff0c;枚舉&#xff0c;ts模塊化&#xff0c;接口和類型兼容性 ts的擴展類型&#xff1a;類型別名&#xff0c;枚舉&#xff0c;接口和類 枚舉 基礎概念 枚舉通常用于約束某個變量的取值范圍。當然字面量和聯合類型配合使用&#xff0c;也可…

Redis 配置詳解

文章目錄 Redis 配置詳解網絡持久化復制安全客戶端內存管理延遲釋放僅追加模式LUA集群慢指令延遲監控事件通知高級配置主動碎片整理 Redis 配置詳解 網絡 ########################## NETWORK ########################## bind&#xff1a;指定 Redis 只接收來自于特定 IP 地…

Linux 高級編程——線程控制

線程控制&#xff1a;互斥與同步 概念&#xff1a; 互斥 》在多線程中對臨界資源的排他性訪問。 互斥機制 》互斥鎖 》保證臨界資源的 訪問控制。 pthread_mutex_t mutex; 互斥鎖類型 互斥鎖變量 內核對象 框架&#xff1a; 定義互斥鎖 》初始化鎖 》加…

前端——在本地搭建Vue單頁應用

目錄 1、安裝最新node.js 2、打開命令行窗口 3、進入要保存項目的目錄下 4、安裝 Vue CLI 5、創建新項目&#xff0c;選擇功能 5.1 新建項目 5.2 Please pick a preset 5.3 Check the features needed for your project 5.4 Choose a version of Vue.js 5.5 Use hist…

Android13 串口控制是能wifi adb實現

Android13 串口控制是能wifi adb實現 文章目錄 一、前言二、Android 串口控制是能wifi adb實現1、通過Settings屬性控制2、通過prop屬性控制3、wifi adb 對應的Settings屬性和prop屬性關系&#xff08;1&#xff09;屬性監聽&#xff08;2&#xff09;相關代碼位置&#xff08;…

優化數據庫字段使用位運算-php語言示例

背景&#xff1a;一個會員有三個狀態&#xff0c;A、B、C&#xff0c;其中一個人可以為 A、B、C、AB&#xff1b;之前數據表結構加了三個字段is_a、is_b、is_c; 本人實在不想這樣粗糙的實現需求&#xff0c;遂決定用位運算優化。 上代碼&#xff1a; 位運算可以用來處理狀態值…

探索SOLIDWORKS 2024設計增強功能

隨著技術的不斷進步和市場的日益競爭&#xff0c;工程設計和制造行業對于快捷、準確和創新的工具需求日益增長。SOLIDWORKS作為3D CAD設計軟件&#xff0c;一直致力于為用戶提供更強大、更便捷的設計工具。SOLIDWORKS 2024的發布&#xff0c;再次證明了其在設計增強功能方面的持…

使用 Amazon Bedrock Converse API 簡化大語言模型交互

本文將介紹如何使用 Amazon Bedrock 最新推出的 Converse API&#xff0c;來簡化與各種大型語言模型的交互。該 API 提供了一致的接口&#xff0c;可以無縫調用各種大型模型&#xff0c;從而消除了需要自己編寫復雜輔助功能函數的重復性工作。文中示例將展示它相比于以前針對每…

如何在Windows上使用Docker搭建PHP開發環境

前言 在本地搭建開發環境我好像沒幾年就要折騰一次&#xff0c;因為本地開發電腦使用的是windows&#xff0c;早些年的時候&#xff0c;用過很多類似WAMP之類的東西&#xff0c;但最終都有或多或少不滿意的地方&#xff0c;前兩年的時候&#xff0c;還折騰過WSL&#xff0c;但…

批量文件名修改軟件:一鍵解決同一編碼多型號文件分類與命名難題,高效管理文件

在數字化時代&#xff0c;圖片文件已經成為我們工作中不可或缺的一部分。然而&#xff0c;當面對成百上千個同一編碼下不同型號的圖片文件時&#xff0c;如何快速、準確地進行分類和命名&#xff0c;成為了許多職場人士頭疼的問題。現在&#xff0c;我們為您帶來了一款神奇的批…

MyBatisPlus 基礎數據表的增刪改查 入門 簡單查詢

MyBatisPlus MyBatisPlus&#xff08;簡稱MP&#xff09;是一個基于MyBatis的增強工具庫&#xff0c;簡化了MyBatis的開發&#xff0c;提供了很多實用的功能和特性&#xff0c;如自動生成SQL、通用CRUD操作、分頁插件、條件構造器、代碼生成器等。它不僅簡化了開發過程&#x…

2024海亮日記

寫在前面&#xff1a;長文預警 20240617 聽說要去海亮&#xff0c;不考&#xff08;補考&#xff09;期末考試&#xff0c;于是進行一個停課的辦理&#xff0c;第一次進入410&#xff0c;被逆天的配置和氣氛所震驚 發誓這回去HL一定要有好效果&#xff0c;于是制定了詳細的計…

golang 未指定類型interface{} 類型的 int類型數據json.Unmarshal 解碼后變成float64類型問題解決方法

golang內置的json反序列化方法&#xff0c;默認情況下對應 未指定類型interface{} 類型的的 int類型數據在經過Unmarshal解碼后 int類型的數據會變成 float64類型。 因為json里面默認將interface{}類型的int數據都當做float64來處理。 解決方法很簡單&#xff0c;就是使用自定…

優盤有盤符顯示0字節:故障解析與數據恢復策略

一、優盤有盤符顯示0字節現象描述 在使用優盤的過程中&#xff0c;我們有時會遇到一種令人困惑的情況&#xff1a;插入優盤后&#xff0c;電腦能正常識別到優盤的盤符&#xff0c;但當我們嘗試訪問其中的數據時&#xff0c;卻發現優盤的容量顯示為0字節&#xff0c;無法讀取或…