1
試圖在C中感受pthreads和多線程編程。感謝這個站點,託管了Ive,以便讓庫鏈接,以便它不會再給我編譯錯誤。在Dev-C++中使用pthreads - 奇怪的錯誤
我試圖讓2個線程運行,一個打印1000000個x和一個打印1000000個o。
但是,運行該程序時存在問題。命令行彈出一毫秒然後死亡,似乎沒有任何事情發生。甚至沒有任何編譯錯誤或任何我可以修復的東西。如果我註釋掉線程創建和線程連接語句,那麼命令行會彈出並等待因爲系統(「暫停」)而擊中某個鍵。
這裏是我的代碼:
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
#include <time.h>
#include <pthread.h>
void* printChar(void *c);
int main(int argc, char *argv[])
{
pthread_t thread1;
pthread_t thread2;
pthread_create(&thread1,NULL,printChar,"x");
pthread_create(&thread2,NULL,printChar,"o");
pthread_join(thread1,NULL);
system("PAUSE");
return 0;
}
void* printChar(void *c)
{
char *str;
str = (char*)c;
int i;
for(i = 0; i < 1000000; i++)
{
printf("%c",str);
}
}
,我從流血開發-C++ IDE一個DOS C-應用。我的並行線程.dll文件和版本.a文件是:libpthreadGC2.a和pthreadGC2.dll
如果您需要任何其他規格lemmie提前知道
的感謝!
你爲什麼使用DevC++?這是一個無法維繫的po pile。在http://codeblocks.org/使用Code :: Blocks – 2011-05-20 17:07:57
嘗試從命令行控制檯運行它以查看錯誤。 – bdonlan 2011-05-20 17:11:37
不僅它沒有維護,而且包含嚴重過時的gcc(3.x)。 – 2011-05-20 17:20:11