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

linux多線程

系統(tǒng) 2146 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è)置線程的屬性,一般不需要特殊的屬性,所以可以簡單地設(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)支持吧,站長非常感激您!手機(jī)微信長按不能支付解決辦法:請(qǐng)將微信支付二維碼保存到相冊(cè),切換到微信,然后點(diǎn)擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

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

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

發(fā)表我的評(píng)論
最新評(píng)論 總共0條評(píng)論
主站蜘蛛池模板: 狠狠久久久久综合网 | 久久精品影院一区二区三区 | 在线免费观看视频a | 精品国产一区二区三区四 | 天天干天天草天天射 | 日日拍夜夜嗷嗷叫狠狠 | 日韩一级在线 | 一本大道久久a久久综合 | 欧美成人午夜视频在线观看 | 亚洲综合日韩中文字幕v在线 | 暴劫倾情无删减在线播放 | 毛片2| 在线一区播放 | 狠狠狠很橹影院 | 在线亚洲欧洲福利视频 | 色综合久久综合欧美综合网 | 四虎影视成人永久在线观看 | 国产精品久久网 | 亚洲美女在线观看播放 | 91国内精品线免费播放 | 狠狠色成人综合网图片区 | 久久久国产免费影院 | 国产 在线 | 日韩 | 日韩爱爱视频 | 久久六视频| 一本伊人 | 久久99九九精品免费 | 欧美狠狠干 | 精品国产乱码久久久久久浪潮 | 午夜黄色毛片 | 欧美精品xxxⅹ欧美 欧美精品成人 | 视频在线观看入口一二三2021 | 久久精品成人欧美大片免费 | 一级毛片短视频 | 国产成+人+综合+亚洲不卡 | 精品成人毛片一区二区视 | 深夜激情网站 | 俄罗斯午夜影院 | 四虎精品久久久久影院 | www.五月天婷婷 | 日日狠狠久久偷偷四色综合免费 |