<em id="0a85b"><option id="0a85b"></option></em>

<abbr id="0a85b"></abbr>

      <nobr id="0a85b"></nobr>
        <tr id="0a85b"></tr>
        9久久伊人精品综合,亚洲一区精品视频在线,成 人免费va视频,国产一区二区三区黄网,99国产精品永久免费视频,亚洲毛片多多影院,精品久久久无码人妻中文字幕,无码国产欧美一区二区三区不卡
        學(xué)習(xí)啦 > 學(xué)習(xí)電腦 > 操作系統(tǒng) > Linux教程 >

        Linux中多線程是什么有什么用

        時間: 加城1195 分享

          Linux繼承了Unix以網(wǎng)絡(luò)為核心的設(shè)計思想,是一個性能穩(wěn)定的多用戶網(wǎng)絡(luò)操作系統(tǒng)。這篇文章主要介紹了Linux中多線程詳解及簡單實例的相關(guān)資料,這里對線程概念及優(yōu)缺點做了詳細介紹并說明如何創(chuàng)建和應(yīng)用,需要的朋友可以參考下

          Linux中多線程詳解及簡單實例

          1.概念

          進程:運行中的程序。

          線程:一個程序中的多個執(zhí)行路徑。更準(zhǔn)確的定義是:線程是一個進程內(nèi)部的一個控制序列。

          2.為什么要有線程?

          用fork調(diào)用進程代價太高,需要讓一個進程同時做多件事情,線程就非常有用。

          3.線程的優(yōu)點和缺點。

          優(yōu)點:

          (1)有時,讓程序看起來是在同時做兩件事是非常有用的。 比如在編輯文檔時,還能統(tǒng)計文檔里的單詞個數(shù)。

          (2)一個混雜著輸入、計算、輸出的程序,利用線程可以將這3個部 分分成3個線程來執(zhí)行,從而改變程序執(zhí)行的性能。

          (3)一般來說,線程之間切換需要操作系統(tǒng)所做的工作比進程間切換需要的代價小。

          缺點:

          (1)編寫線程需要非常仔細的設(shè)計。

          (2)對多線程的調(diào)試困難程度比單線程調(diào)試大得多。

          4.創(chuàng)建線程

          #include

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

          pthread_t pthread_self(void);

          (2)int pthread_equal(pthread_t thread1,pthread_t thread2);

          (3)int pthread_once(pthread_once_t *once_control,void(*init_routine)(void));

          Linux系統(tǒng)支持POSIX多線程接口,稱為pthread。編寫linux下的多線程程序,需要包含頭文件pthread.h,鏈接時需要使用庫libpthread.a。

          如果在主線程里面創(chuàng)建線程,程序就會在創(chuàng)建線程的地方產(chǎn)生分支,變成兩個部分執(zhí)行。線程的創(chuàng)建通過函數(shù)pthread_create來完成。成功返回0。

          1.線程創(chuàng)建:

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

          pthread_t pthread_self(void);

          參數(shù)說明:

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

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

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

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

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

          2.線程終止

          void pthread_exit(void *retval);

          參數(shù)說明:

          retval:返回指針,指向線程向要返回的某個對象。

          線程通過調(diào)用pthread_exit函數(shù)終止執(zhí)行,并返回一個指向某對象的指針。注意:絕不能用它返回一個指向局部變量的指針,因為線程調(diào)用該函數(shù)后,這個局部變量就不存在了,這將引起嚴重的程序漏洞。

          3.線程同步

          int pthread_join(pthread_t th, void **thread_return);

          參數(shù)說明:

          th:將要等待的線程,線程通過pthread_create返回的標(biāo)識符來指定。

          thread_return:一個指針,指向另一個指針,而后者指向線程的返回值。

          補充:Linux基本命令

          1.ls命令:

          格式::ls [選項] [目錄或文件]

          功能:對于目錄,列出該目錄下的所有子目錄與文件;對于文件,列出文件名以及其他信息。

          常用選項:

          -a :列出目錄下的所有文件,包括以 . 開頭的隱含文件。

          -d :將目錄像文件一樣顯示,而不是顯示其他文件。

          -i :輸出文件的i節(jié)點的索引信息。

          -k :以k字節(jié)的形式表示文件的大小。

          -l :列出文件的詳細信息。

          -n :用數(shù)字的UID,GID代替名稱。

          -F : 在每個文件名后面附上一個字符以說明該文件的類型,“*”表示可執(zhí)行的普通文 件;“/”表示目錄;“@”表示符號鏈接;“l”表示FIFOS;“=”表示套接字。

          2.cd命令

          格式:cd [目錄名稱]

          常用選項:

          cd .. 返回上一級目錄。

          cd ../.. 將當(dāng)前目錄向上移動兩級。

          cd - 返回最近訪問目錄。

          3.pwd命令

          格式: pwd

          功能:顯示出當(dāng)前工作目錄的絕對路徑。

          相關(guān)閱讀:Linux主要特性

          完全兼容POSIX1.0標(biāo)準(zhǔn)

          這使得可以在Linux下通過相應(yīng)的模擬器運行常見的DOS、Windows的程序。這為用戶從Windows轉(zhuǎn)到Linux奠定了基礎(chǔ)。許多用戶在考慮使用Linux時,就想到以前在Windows下常見的程序是否能正常運行,這一點就消除了他們的疑慮。

          多用戶、多任務(wù)

          Linux支持多用戶,各個用戶對于自己的文件設(shè)備有自己特殊的權(quán)利,保證了各用戶之間互不影響。多任務(wù)則是現(xiàn)在電腦最主要的一個特點,Linux可以使多個程序同時并獨立地運行。

          良好的界面

          Linux同時具有字符界面和圖形界面。在字符界面用戶可以通過鍵盤輸入相應(yīng)的指令來進行操作。它同時也提供了類似Windows圖形界面的X-Window系統(tǒng),用戶可以使用鼠標(biāo)對其進行操作。在X-Window環(huán)境中就和在Windows中相似,可以說是一個Linux版的Windows。

          支持多種平臺

          Linux可以運行在多種硬件平臺上,如具有x86、680x0、SPARC、Alpha等處理器的平臺。此外Linux還是一種嵌入式操作系統(tǒng),可以運行在掌上電腦、機頂盒或游戲機上。2001年1月份發(fā)布的Linux 2.4版內(nèi)核已經(jīng)能夠完全支持Intel 64位芯片架構(gòu)。同時Linux也支持多處理器技術(shù)。多個處理器同時工作,使系統(tǒng)性能大大提高。


        Linux中多線程相關(guān)文章:

        1.linux查看線程命令

        2.linux shell wait命令

        3.xshell操作linux系統(tǒng)的常用命令

        4.linux查看java進程命令

        5.維護linux路由表的方法步驟詳解

        4019156 主站蜘蛛池模板: 无码国产69精品久久久久网站| 我们高清观看免费中国片| 欧美大胆老熟妇乱子伦视频| 尤物国产在线精品一区| 精品人妻少妇嫩草av专区| 综合色一色综合久久网| 奇米777四色成人影视| 一本本月无码-| 国产成人无码一区二区在线播放| 国产精品天堂蜜av在线播放| 色综合天天综合天天更新| 欧洲熟妇色自偷自拍另类| 无码抽搐高潮喷水流白浆| 国产在线中文字幕精品| 少妇人妻av无码专区| 人妻少妇精品中文字幕| 自拍偷自拍亚洲一区二区| 国产一区二区不卡在线| 亚洲精品天堂在线观看| 精品午夜福利在线观看| 伊人色综合九久久天天蜜桃| 亚洲av永久无码天堂影院| 中文字幕亚洲精品第一页| 精品久久久久久无码中文字幕| 精品无码黑人又粗又大又长 | 亚洲欧美日韩在线不卡| 夜夜嗨av一区二区三区| 妺妺窝人体色www在线直播| 综合久青草视频在线观看| 色狠狠综合天天综合综合| 国产乱码一区二区三区免费 | 别揉我奶头~嗯~啊~的视频| 国产馆在线精品极品粉嫩| 精品国产一区二区三区av性色| 精品国产一区AV天美传媒| 国产日韩AV免费无码一区二区三区| 精品人妻久久久久久888| 亚洲精品中文字幕码专区| 国产成人一区二区不卡| 国产日产欧产系列| 欧美成人一区二区三区不卡|