日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux多进程优先级,Linux多线程之优先级

發布時間:2024/7/23 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux多进程优先级,Linux多线程之优先级 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

1、多線程的作用: 即什么情況考慮使用多線程?

2、多線程的創建: 默認參數創建即可!pthread_create(&tid,NULL,(void *)thread_func,NULL);

3、多線程的同步: 掌握互斥,條件  兩種同步方式即可!

表 1. 線程函數列表

對象

操作

Linux Pthread API

Windows SDK 庫對應 API

線程

創建

pthread_create

CreateThread

退出

pthread_exit

ThreadExit

等待

pthread_join

WaitForSingleObject

互斥鎖

創建

pthread_mutex_init

CreateMutex

銷毀

pthread_mutex_destroy

CloseHandle

加鎖

pthread_mutex_lock

WaitForSingleObject

解鎖

pthread_mutex_unlock

ReleaseMutex

條件

創建

pthread_cond_init

CreateEvent

銷毀

pthread_cond_destroy

CloseHandle

觸發

pthread_cond_signal

SetEvent

廣播

pthread_cond_broadcast

SetEvent / ResetEvent

等待

pthread_cond_wait / pthread_cond_timedwait

SingleObjectAndWait

但我還有一個問題:

4、主線程是否比默認創建的線程優先級更高?

我用如下測試代碼及運行結果說明問題:

#include

#include

#include

#include

void Thread_1()

{

printf("%s ?pid :0x%x, tid :0x%x \n",__func__, ?getpid(), (int)pthread_self());

int i=0,j=0;

while(1)

{

for(j=1;j<5000000;j++)

{

}

//sleep(1); //?刪除sleep,每個線程都全力運行!

i++;

printf("%s, ?%d\n", __func__, i);

}

}

void Thread_2()

{

printf("%s ?pid :0x%x, tid :0x%x \n",__func__, ?getpid(), (int)pthread_self());

int i=0,j=0;

while(1)

{

for(j=1;j<5000000;j++)

{

}

//sleep(1);

i++;

printf("%s, ?%d\n", __func__, i);

}

}

void Thread_3()

{

printf("%s ?pid :0x%x, tid :0x%x \n",__func__, ?getpid(), (int)pthread_self());

int i=0,j=0;

while(1)

{

for(j=1;j<5000000;j++)

{

}

//sleep(1);

i++;

printf("%s, ?%d\n", __func__, i);

}

}

void Thread_main()

{

printf("%s ?pid :0x%x, tid :0x%x \n",__func__, ?getpid(), (int)pthread_self());

int i=0,j=0;

while(1)

{

for(j=1;j<5000000;j++)

{

}

//sleep(1);

i++;

printf("%s, ?%d\n", __func__, i);

}

}

int main()

{

pthread_t ppid1,ppid2,ppid3;

printf("%s ?pid :0x%x, tid :0x%x \n",__func__, ?getpid(), (int)pthread_self());

pthread_create(&ppid1,NULL,(void *)Thread_1,NULL);

pthread_create(&ppid2,NULL,(void *)Thread_2,NULL);

pthread_create(&ppid3,NULL,(void *)Thread_3,NULL);

Thread_main();

return 0;

}

編譯執行結果如下:

$gcc test.c -lpthread

$ ./a.out

刪除sleep,每個線程都全力運行!

運行結果可以看出:主線程沒有明顯的級別優先。

應避免使用“父線程”和“子線程”的說法

main ?pid :0x71c5, tid :0x65bfa720

Thread_2 ?pid :0x71c5, tid :0x64c4b700

Thread_main ?pid :0x71c5, tid :0x65bfa720

Thread_1 ?pid :0x71c5, tid :0x6544c700

Thread_3 ?pid :0x71c5, tid :0x6444a700

Thread_main, ?1

Thread_3, ?1

Thread_1, ?1

Thread_2, ?1

Thread_main, ?2

Thread_3, ?2

Thread_1, ?2

Thread_main, ?3

Thread_2, ?2

Thread_3, ?3

Thread_main, ?4

Thread_1, ?3

Thread_2, ?3

Thread_main, ?5

Thread_3, ?4

Thread_1, ?4

Thread_main, ?6

Thread_2, ?4

Thread_3, ?5

Thread_main, ?7

Thread_1, ?5

Thread_2, ?5

Thread_3, ?6

Thread_main, ?8

Thread_1, ?6

Thread_2, ?6

Thread_main, ?9

Thread_3, ?7

Thread_1, ?7

Thread_main, ?10

Thread_2, ?7

Thread_3, ?8

Thread_main, ?11

Thread_1, ?8

Thread_2, ?8

Thread_main, ?12

Thread_3, ?9

Thread_1, ?9

Thread_2, ?9

Thread_main, ?13

Thread_3, ?10

Thread_1, ?10

Thread_main, ?14

Thread_2, ?10

Thread_3, ?11

Thread_1, ?11

Thread_main, ?15

Thread_2, ?11

Thread_3, ?12

Thread_main, ?16

Thread_1, ?12

Thread_2, ?12

Thread_main, ?17

Thread_3, ?13

Thread_2, ?13

Thread_main, ?18

Thread_3, ?14

Thread_1, ?13

Thread_2, ?14

Thread_main, ?19

Thread_3, ?15

Thread_1, ?14

Thread_2, ?15

Thread_main, ?20

Thread_3, ?16

Thread_main, ?21

Thread_2, ?16

Thread_1, ?15

Thread_main, ?22

Thread_3, ?17

Thread_2, ?17

Thread_main, ?23

Thread_1, ?16

Thread_3, ?18

Thread_2, ?18

Thread_main, ?24

Thread_1, ?17

Thread_2, ?19

Thread_3, ?19

Thread_main, ?25

Thread_3, ?20

Thread_2, ?20

Thread_main, ?26

Thread_1, ?18

Thread_main, ?27

Thread_2, ?21

Thread_3, ?21

Thread_1, ?19

Thread_main, ?28

Thread_2, ?22

Thread_3, ?22

Thread_main, ?29

Thread_1, ?20

Thread_3, ?23

Thread_2, ?23

Thread_main, ?30

Thread_1, ?21

Thread_2, ?24

Thread_3, ?24

Thread_main, ?31

Thread_1, ?22

Thread_main, ?32

Thread_3, ?25

Thread_2, ?25

Thread_main, ?33

Thread_1, ?23

Thread_2, ?26

Thread_3, ?26

Thread_main, ?34

Thread_1, ?24

Thread_3, ?27

Thread_2, ?27

Thread_main, ?35

Thread_1, ?25

Thread_2, ?28

Thread_main, ?36

Thread_3, ?28

Thread_main, ?37

Thread_1, ?26

Thread_3, ?29

Thread_2, ?29

Thread_main, ?38

Thread_1, ?27

Thread_3, ?30

Thread_main, ?39

..........

Thread_main, ?3736 Thread_2, ?3671 Thread_1, ?2888 Thread_main, ?3737 Thread_3, ?2840 Thread_2, ?3672

總結

以上是生活随笔為你收集整理的linux多进程优先级,Linux多线程之优先级的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 亚洲在线一区二区三区 | 白浆在线播放 | 成年人网站免费在线观看 | 色姑娘久 | 激情小说专区 | 国产日产欧美一区二区三区 | 99热日本 | 少妇高潮毛片色欲ava片 | 久久精品亚洲无码 | 欧美激情三区 | 久久中文字幕视频 | 亚洲一区在线电影 | 精品久久免费视频 | 国产精品福利一区 | 欧美国产片 | 黄色三级在线播放 | 美女免费网站 | 爱逼综合网 | 国产精品国产一区二区三区四区 | 成人羞羞网站 | 国产精品精品国产色婷婷 | 国产免费av网址 | 免费的毛片网站 | 手机在线小视频 | 日韩国产欧美视频 | 欧美三级三级三级爽爽爽 | 免费成人在线视频观看 | 在线观看黄色免费视频 | 国产亚洲精品久久久久久打不开 | 岛国av动作片| 黄色大片毛片 | 日韩免费成人av | 91午夜免费视频 | 久久精品视频在线免费观看 | 亚洲人体av| 亚洲视频精品在线观看 | 色爽视频 | 黑人一区 | 亚洲激情电影在线 | 久久99精品国产麻豆婷婷洗澡 | 天堂中文在线观看视频 | 欧洲熟妇精品视频 | 国产精品一区二区久久毛片 | av资源在线看 | 国产精品视频网址 | 激情偷乱人成视频在线观看 | 在线99视频| 亚洲男女一区二区三区 | 国产农村妇女精品久久久 | 免费一二区 | 激情综合激情五月 | 色狠狠av老熟女 | 国产激情一区二区三区四区 | 久久精品美乳 | 一区二区精品免费 | www成人免费| 国产网站在线免费观看 | 日韩av资源在线观看 | 欧美黄色录像带 | 风间由美av在线 | 性生活毛片 | a级性生活视频 | a免费观看 | 男人午夜视频 | 久久久久久日产精品 | 爱吃波客今天最新视频 | 2024av| 91在线免费视频观看 | 国产v片| 视色视频在线观看 | 美女免费av | 鲁鲁久久| 草草影院国产第一页 | 中文字幕日韩一区二区 | 欧美视频在线观看一区二区 | 国产高清视频免费在线观看 | 三级国产网站 | 能看的黄色网址 | 国产成人麻豆免费观看 | 天堂影视在线观看 | 欧美bbbbb | 成人小视频免费观看 | 男人和女人日批 | 国产福利91精品一区二区三区 | 精品久久久久久久久久久国产字幕 | 91在线中文字幕 | 肥熟女一区二区三肥熟女 | 国产老头和老头xxxx× | 中文字幕在线观看免费高清 | 97自拍网| 黑人干日本少妇 | 四季av国产一区二区三区 | 日本欧美一本 | 伊人55| 欧美特级黄色录像 | 精品久久久无码中文字幕 | 91青草视频 | 日本十大三级艳星 | 亚洲午夜精品一区 |