最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C語(yǔ)言 pthread_create() 函數(shù)講解

 更新時(shí)間:2021年08月12日 10:17:28   作者:Ruigel1  
這篇文章主要介紹了C語(yǔ)言 pthread_create() 函數(shù)講解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下

pthread_create()函數(shù)詳解

pthread_create是類Unix操作系統(tǒng)(Unix、Linux、Mac OS X等)的創(chuàng)建線程的函數(shù)。它的功能是創(chuàng)建線程(實(shí)際上就是確定調(diào)用該線程函數(shù)的入口點(diǎn)),在線程創(chuàng)建以后,就開(kāi)始運(yùn)行相關(guān)的線程函數(shù)。

頭文件:

#include<pthread.h>

函數(shù)原型:

int pthread_create (pthread_t * tidp,     const pthread_attr_t * attr,    void * (*start_rtn)(void*),      void *arg);
各個(gè)參數(shù)說(shuō)明:
第一個(gè)參數(shù)為指向線程標(biāo)識(shí)符的指針。
第二個(gè)參數(shù)用來(lái)設(shè)置線程屬性。
第三個(gè)參數(shù)是線程運(yùn)行函數(shù)的起始地址。
最后一個(gè)參數(shù)是運(yùn)行函數(shù)的參數(shù)。
編譯鏈接參數(shù):
-lpthread
返回值:

    若線程創(chuàng)建成功,則返回0。若線程創(chuàng)建失敗,則返回出錯(cuò)編號(hào),并且*thread中的內(nèi)容是未定義的。

    返回成功時(shí),由tidp指向的內(nèi)存單元被設(shè)置為新創(chuàng)建線程的線程ID。attr參數(shù)用于指定各種不同的線程屬性。新創(chuàng)建的線程從start_rtn函數(shù)的地址開(kāi)始運(yùn)行,該函數(shù)只有一個(gè)萬(wàn)能指針參數(shù)arg,如果需要向start_rtn函數(shù)傳遞的參數(shù)不止一個(gè),那么需要把這些參數(shù)放到一個(gè)結(jié)構(gòu)中,然后把這個(gè)結(jié)構(gòu)的地址作為arg的參數(shù)傳入。
    linux下用C語(yǔ)言開(kāi)發(fā)多線程程序,Linux系統(tǒng)下的多線程遵循POSIX線程接口,稱為pthread。
注意事項(xiàng):
    因?yàn)閜thread并非Linux系統(tǒng)的默認(rèn)庫(kù),而是POSIX線程庫(kù)。在Linux中將其作為一個(gè)庫(kù)來(lái)使用,因此加上 -lpthread(或-pthread)以顯式鏈接該庫(kù)。函數(shù)在執(zhí)行錯(cuò)誤時(shí)的錯(cuò)誤信息將作為返回值返回,并不修改系統(tǒng)全局變量errno,當(dāng)然也無(wú)法使用perror()打印錯(cuò)誤信息。
示例代碼:
輸出線程標(biāo)識(shí)符:
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
#include <unistd.h>
#include <string.h>


void printids(const char *s)
{
pid_t pid;
pthread_t tid;
pid = getpid();
tid = pthread_self();
printf("%s pid %u tid %u (0x%x)\n", s, (unsigned int) pid, (unsigned int) tid, (unsigned int) tid);

}

void * thr_fn(void *arg)
{
printids("new thread: ");
return NULL;
}

int main()
{
int err;
pthread_t ntid;
err = pthread_create(&ntid, NULL, thr_fn, NULL);
if(err != 0)
{
printf("Can't create thread: %s\n", strerror(err));
}

printids("main thread");
pthread_join(ntid, NULL);

return EXIT_SUCCESS;
}

結(jié)果展示:

到此這篇關(guān)于C語(yǔ)言 pthread_create() 函數(shù)講解的文章就介紹到這了,更多相關(guān)C語(yǔ)言 pthread_create()內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • C++使用循環(huán)計(jì)算標(biāo)準(zhǔn)差的代碼實(shí)現(xiàn)

    C++使用循環(huán)計(jì)算標(biāo)準(zhǔn)差的代碼實(shí)現(xiàn)

    在C++中,計(jì)算標(biāo)準(zhǔn)差可以使用循環(huán)來(lái)實(shí)現(xiàn),本文給大家介紹了一個(gè)示例代碼,演示了如何使用循環(huán)計(jì)算標(biāo)準(zhǔn)差,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-12-12
  • C語(yǔ)言中編寫可變參數(shù)函數(shù)

    C語(yǔ)言中編寫可變參數(shù)函數(shù)

    這篇文章主要介紹了C語(yǔ)言中編寫可變參數(shù)函數(shù)的相關(guān)資料,需要的朋友可以參考下
    2017-07-07
  • C++中輸入輸出流及文件流操作總結(jié)

    C++中輸入輸出流及文件流操作總結(jié)

    這篇文章主要為大家總結(jié)了C++中輸入輸出流及文件流操作,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-10-10
  • C++中變量進(jìn)行初始化的3種方法

    C++中變量進(jìn)行初始化的3種方法

    本文主要介紹了C++中變量進(jìn)行初始化的3種方法,包括用"=",構(gòu)造函數(shù)初始化以及統(tǒng)一初始化這三種方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-02-02
  • C語(yǔ)言如何實(shí)現(xiàn)一些算法或者函數(shù)你知道嗎

    C語(yǔ)言如何實(shí)現(xiàn)一些算法或者函數(shù)你知道嗎

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)一些算法或者函數(shù),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • C語(yǔ)言實(shí)現(xiàn)放煙花的程序

    C語(yǔ)言實(shí)現(xiàn)放煙花的程序

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)放煙花的程序,有音樂(lè)播放,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-02-02
  • win32 api實(shí)現(xiàn)2048游戲示例

    win32 api實(shí)現(xiàn)2048游戲示例

    這篇文章主要介紹了win32 api實(shí)現(xiàn)2048游戲示例,需要的朋友可以參考下
    2014-05-05
  • C++無(wú)痛實(shí)現(xiàn)日期類的示例代碼

    C++無(wú)痛實(shí)現(xiàn)日期類的示例代碼

    凡是要寫類必須要提到六大默認(rèn)成員(六位大爺):構(gòu)造函數(shù)、析構(gòu)函數(shù)、拷貝構(gòu)造函數(shù)、賦值重載函數(shù)、取地址重載函數(shù)(包括const對(duì)象和普通對(duì)象);那么這次的日期類又需要伺候哪幾位大爺呢?本文就來(lái)詳細(xì)說(shuō)說(shuō)
    2022-10-10
  • 詳解C語(yǔ)言的void*空指針

    詳解C語(yǔ)言的void*空指針

    這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言的void*空指針,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來(lái)幫助
    2022-03-03
  • VS2019配置opencv詳細(xì)圖文教程和測(cè)試代碼的實(shí)現(xiàn)

    VS2019配置opencv詳細(xì)圖文教程和測(cè)試代碼的實(shí)現(xiàn)

    這篇文章主要介紹了VS2019配置opencv詳細(xì)圖文教程和測(cè)試代碼的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04

最新評(píng)論

舒城县| 于都县| 安国市| 五峰| 裕民县| 阳原县| 维西| 文化| 华亭县| 大方县| 涟源市| 安徽省| 石城县| 溧阳市| 平陆县| 凯里市| 辽宁省| 平和县| 清流县| 洛川县| 陆川县| 北辰区| 汤阴县| 澄城县| 铜山县| 广元市| 三都| 营山县| 突泉县| 从化市| 科技| 建德市| 威远县| 城固县| 绍兴市| 武城县| 达孜县| 龙泉市| 渑池县| 儋州市| 重庆市|