主题:如何在VC6.0下用pthread.h这个头文件啊?
josephkwok
[专家分:530] 发布于 2010-12-14 16:59:00
如题,我之前用习惯了 linux 下的那个 pthread.h .
想在windows下使用,但不知道怎么做,
在百度搜索了下,弄来弄去都不行,
现在我已经在
ftp://sources.redhat.com/pub/pthreads-win32/pthreads-w32-2-7-0-release.exe
下载了那个 pthread 的东西.
希望能详细的说说步骤,
非常感谢!!!
回复列表 (共1个回复)
沙发
josephkwok [专家分:530] 发布于 2010-12-14 17:13:00
VC++6.0 下配置 pthread库2010年12月12日 星期日 13:14VC下的pthread多线程编程(2008-04-22 23:39:20) 转载
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
void* tprocess1(void* args){
int i=1;
while(i<=10){
printf("process1:%d\n",i);
i++;
}
return NULL;
}
void* tprocess2(void* args){
int i=1;
while(i<=10){
printf("process2:%d\n",i);
i++;
}
return NULL;
}
int main(){
pthread_t t1;
pthread_t t2;
pthread_create(&t1,NULL,tprocess1,NULL);
pthread_create(&t2,NULL,tprocess2,NULL);
pthread_join(t1,NULL);
pthread_join(t2,NULL);
return 0;
}
运行之前需要做一些配置:
1.下载PTHREAD的WINDOWS开发包 pthreads-w32-2-4-0-release.exe(任何一个版本均可)
http://sourceware.org/pthreads-win32/,解压到一个目录。
2.找到include和lib文件夹,下面分别把它们添加到VC++6.0的头文件路径和静态链接库路径下面:
a).Tools->Options,选择Directory页面,然后在Show directories for:中选择Include files(默认),
在Directories中添加include的路径。在Show directories for:中选择Library files,
在Directories中添加lib的路径。
b).Project->Settings,选择Link页面,然后将lib下的*.lib文件添加到Object/library Modules,
各lib文件以空格隔开。
c).将lib下的*.dll文件复制到工程目录下,即根目录。
如果不配置环境,将出现以下错误:
Linking...
工程名.obj : error LNK2001: unresolved external symbol __imp__pthread_join
工程名.obj : error LNK2001: unresolved external symbol __imp__pthread_create
Debug/工程名.exe : fatal error LNK1120: 2 unresolved externals
Error executing link.exe.
工程名.exe - 3 error(s), 0 warning(s)
我来回复