亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

linux多線程

系統(tǒng) 1799 0

1、進(jìn)程與線程

這是個(gè)老生常談的話題,我們只需要記住:

進(jìn)程可是一個(gè)資源的基本單位,而線程是程序調(diào)度的基本單位,一個(gè)進(jìn)程內(nèi)部的線程之間共享進(jìn)程獲得的時(shí)間片。線程擁有自己的棧,因?yàn)榫€程有自己的局部變量,其他的資源(文件描述字,全局變量等)和其他線程共享。

2、有關(guān)線程的函數(shù)

int pthread_create(pthread_t *thread, pthread_attr_t *attr, void *(*start_routine)(void *), void *arg);

參數(shù)說明:

thread:指向pthread_create類型的指針,用于引用新創(chuàng)建的線程。

attr:用于設(shè)置線程的屬性,一般不需要特殊的屬性,所以可以簡(jiǎn)單地設(shè)置為NULL。

*(*start_routine)(void *):傳遞新線程所要執(zhí)行的函數(shù)地址。

arg:新線程所要執(zhí)行的函數(shù)的參數(shù)。

調(diào)用如果成功,則返回值是0,如果失敗則返回錯(cuò)誤代碼。

void pthread_exit(void *retval);

參數(shù)說明:

retval:返回指針,指向線程向要返回的某個(gè)對(duì)象。

線程通過調(diào)用pthread_exit函數(shù)終止執(zhí)行,并返回一個(gè)指向某對(duì)象的指針。不能指向局部變量…… 如下栗子:

View Code
        
          void
        
         threadFunc(
        
          char
        
         *
        
           arg){

    
        
        
          char
        
         result = 
        
          '
        
        
          d
        
        
          '
        
        
          ;

    printf(
        
        
          "
        
        
          %s\n
        
        
          "
        
        
          , arg);

    

    pthread_exit(
        
        &
        
          result);

}






        
        
          int
        
        
           main(){

    pthread_t t1;

    
        
        
          void
        
         *
        
           res;

    
        
        
          int
        
        
           s;

    

    s 
        
        = pthread_create(&t1, NULL, (
        
          void
        
         *)threadFunc, (
        
          void
        
         *)
        
          "
        
        
          hello world
        
        
          "
        
        
          );



    
        
        
          if
        
        (s != 
        
          0
        
        ) printf(
        
          "
        
        
          create failed\n
        
        
          "
        
        
          );



    s 
        
        = pthread_join(t1, &
        
          res);



    
        
        
          if
        
        (s != 
        
          0
        
        ) printf(
        
          "
        
        
          join failed\n
        
        
          "
        
        
          );

    

    printf(
        
        
          "
        
        
          thread return %c
        
        
          "
        
        ,*((
        
          char
        
         *
        
          )res));



    
        
        
          return
        
        
          0
        
        
          ;

}
        
      

?

int pthread_join(pthread_t thread, void ** retval);

參數(shù)說明:

thread: 線程標(biāo)識(shí)符,即線程ID,標(biāo)識(shí)唯一線程。   

retval: 用戶定義的指針,用來存儲(chǔ)被等待線程的返回值。

來源百度百科:代碼中如果沒有 pthread_join 主線程會(huì)很快結(jié)束從而使整個(gè)進(jìn)程結(jié)束,從而使創(chuàng)建的線程沒有機(jī)會(huì)開始執(zhí)行就結(jié)束了。加入 pthread_join 后,主線程會(huì)一直等待直到等待的線程結(jié)束自己才結(jié)束,使創(chuàng)建的線程有機(jī)會(huì)執(zhí)行。   所有線程都有一個(gè)線程號(hào),也就是 Thread ID 。其類型為 pthread_t 。通過調(diào)用 pthread_self() 函數(shù)可以獲得自身的線程號(hào)。

linux多線程


更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號(hào)聯(lián)系: 360901061

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點(diǎn)擊下面給點(diǎn)支持吧,站長(zhǎng)非常感激您!手機(jī)微信長(zhǎng)按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對(duì)您有幫助就好】

您的支持是博主寫作最大的動(dòng)力,如果您喜歡我的文章,感覺我的文章對(duì)您有幫助,請(qǐng)用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長(zhǎng)會(huì)非常 感謝您的哦!!!

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 天天干天天草天天射 | 免费精品精品国产欧美在线 | 四虎地址8848jia | 91亚洲国产三上悠亚在线 | 亚洲成 人a影院青久在线观看 | 亚洲精品伊人 | 99久热 | 久久久久国产精品免费网站 | 成人在免费观看视频国产 | 日韩不卡一区二区三区 | 精品国产品香蕉在线 | 亚洲欧美一区二区三区二厂 | 波多野一区二区三区在线 | 欧美日韩成人高清色视频 | 天天干天天干天天干天天干天天干 | 99re这里只有精品99 | 国产精品福利在线观看免费不卡 | 黄色网址在线免费 | 国产精品爱久久久久久久小 | 日日操夜夜操免费视频 | 91在线精品免费观看 | 亚洲综合激情视频 | 欧美人猛交日本人xxx | 亚洲综合久久综合激情久久 | 免费久久久久 | 97免费视频免费视频 | 国产目拍亚洲精品一区麻豆 | 成人午夜在线播放 | 日本亚洲欧洲免费无码 | 国产精品福利视频主播真会玩 | 国产精品久久福利新婚之夜 | 国产免费看 | 久久福利网 | 91青青青 | 成人性开放大片 | 久久亚洲精品国产亚洲老地址 | 九月婷婷综合婷婷 | 在线性视频 | 九一视频在线免费观看 | 免费在线一级毛片 | 天天操夜夜艹 |