c的多线程实现
发布网友
发布时间:2022-04-20 03:22
我来回答
共3个回答
热心网友
时间:2023-09-05 21:12
#include <stdio.h>
#include <pthread.h>
void thread(void)
{
int i;
for(i=0;i<3;i++)
printf("This is a pthread.\n");
}
int main(void)
{
pthread_t id;
int i,ret;
ret=pthread_create(&id,NULL,(void *) thread,NULL);
if(ret!=0){
printf ("Create pthread error!\n");
exit (1);
}
for(i=0;i<3;i++)
printf("This is the main process.\n");
pthread_join(id,NULL);
return (0);
}
不算是双核优化哈!也不是并发处理,如果真的让多线程发挥到极致就用多核经较好
参考资料:http://blog.readnovel.com/article/htm/tid_509481.html
热心网友
时间:2023-09-05 21:12
#include<windows.h>
long WINAPI Thread( LPVOID pParam )
{
MessageBox(0,"两个对话框同时弹出来!这是第二个对话框!","第二个",0);
return 1;
}
int main(void)
{
int i;
unsigned long * p=NULL;
CreateThread(0,0,(LPTHREAD_START_ROUTINE)Thread,NULL,0,p);
MessageBox(0,"哈\n\n\n\n哈","第一个",0);
return 1;
}
给分吧。
热心网友
时间:2023-09-05 21:13
用Pthread库,或者OpenMP(gcc 4.2及以上版本支持)
可以创建多个线程,是多核优化的一种!