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

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)論
主站蜘蛛池模板: 色综综| 久久综合99re88久久爱 | 国产精品不卡 | 久热中文 | 中文字幕在线影院 | 94在线成人免费视频 | 尤物视频在线观看视频 | 看片一区 | 91热视频在线 | 精品久久九九 | 久草久草 | 久久99久久精品国产只有 | 日本在线一级 | 男人天堂黄色 | 免费h片在线观看网址最新 免费v片在线观看无遮挡 | 男女一级毛片免费播放 | 一区二区三区在线 | 网站 | 精品视自拍视频在线观看 | 97人人艹| 毛片3| 亚洲欧洲国产精品久久 | 在线播放国产一区二区三区 | 成人欧美一区二区三区黑人 | 亚洲酒色1314狠狠做 | www日韩中文字幕在线看 | 99热久久国产精品免费观看 | 激情五月婷婷色 | 欧美啪啪小视频 | 在线a毛片免费视频观看 | 四虎影视永久在线 | 国产精品久久久久久久成人午夜 | 日韩亚洲在线 | 99免费在线 | 亚洲一区高清 | 国产一区二区不卡视频 | 亚洲图片综合网 | 日韩中文字幕在线观看视频 | 欧美日韩成人在线视频 | 久久88色综合色鬼 | www.天天干.com | 欧美色视频日本片高清在线观看 |