C語言裡pthread到底該怎麼用呢?

時間 2021-06-09 04:35:47

1樓:醉臥沙場

Please, man pthread_create!

PTHREAD_CREATE(3Linux Programmer's ManualPTHREAD_CREATE(3)

NAME

pthread_create - create a new thread

SYNOPSIS

#include int pthread_create(pthread_t *thread, const pthread_attr_t *attrvoid *(*start_routine) (void *), void *arg);

乙個函式四個變數,你用了其中兩個(另外兩個用的NULL),兩個都用錯了:

pthread_create的第乙個引數是pthread_t * 型別的變數,是個指標。你完全用錯了。

第三個引數的函式定義型別要求返回值是void *型別,引數也是void *型別。而你的定義卻是:

void f1()

...void f2()

...這樣也是很不規範的。

2樓:lxyscls

"SIGSEGV on thread: ...",大概是你的執行緒2掛了,所以只剩執行緒1執行,原因是前面別人講的pthread_create用的不對。

來來來POSIX多執行緒程式設計 (豆瓣)

c語言程式設計i love you 重複520次怎麼做?

浩說程式設計 兄弟,從技術層面上的實現方法自不必說了,因為已經有人回答俗話說看問題要透過表面看本質,我來告訴你 如何追女生?投其所好知道吧 給她她想要的,而不是給她你覺得重要的。重要的事情說三遍 給她她想要的給她她想要的給她她想要的 include void print int times,int ...

c語言裡的char大小到底是4還是1?

to store any member of the basicexecution character set.If a member of the basic execution character set is stored in a char object,its value is guara...

關於C語言裡setvbuf和setbuf的疑問?

PJHubs 其實,不單單只是檔案的使用,而是說與緩衝池打交道的場景下都有必要去使用,當然,這是充分不必要條件。尤其你是要把 東西 從外部儲存器中移交給程式使用,當你這段程式多次反覆的呼叫後,系統會將其放入cache 高速緩衝儲存器 中,為啥要放呢?這個場景就跟題主問的問題類似了。之所以要先把檔案先...