windows 配置VC++6.0下支持pthreads(posix)多线程编程过程

1、下载PTHREAD的WINDOWS开发包pthreads-w32-2-8-0-release.exe其实任何一个版本均可

2、该文件其实是一个压缩包:

     选择(Browse)相应目录点击Extract用于解压后的文件存放,并且记住这个目录,后续还要用到!

3、找到解压后的目录下名为 Pre-built.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文件以空格隔开。 

       在添加的时候是输入这些*.lib库的名字,以本人配置的为例,添加的是:pthreadVC2.lib pthreadVCE2.lib pthreadVSE2.lib

   c).将lib下的*.dll文件复制到工程目录下,即根目录。

      这个工作需要手动操作,把解压后lib目录下所有*.dll文件拷贝到工程所在目录下即可。

      需要注意的是:如果要单独运行生成的(define).exe文件,那么就要在debug目录下也复制这些文件,因为采用了相对路径,所以动态运行时加载才会发现dll缺少,因此需要把dll文件拷贝到debug目录下。

测试代码:

#include <stdio.h>  
#include <stdlib.h>  
#include <pthread.h>  
#include <windows.h>

void* thread(void* args){
	int i;
	for(i=0;i<3;i++) printf("This is a pthread.\n");
	return 0;
}

int main(void) {
	pthread_t id;
	int i,ret;
	ret=pthread_create(&id,NULL,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);
	getchar();
	return (0);
}


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值