windows环境下给DEV C++配置pthread
参考:1、(https://blog.csdn.net/qianchenglenger/article/details/16907821)
2、(https://blog.csdn.net/wufuhuai/article/details/79771428?utm_source=blogxgwz7)
这两篇文章。
配置软件:配置软件:Pthreads-w32
下载地址:(ftp://sourceware.org/pub/pthreads-win32/pthreads-w32-2-9-1-release.zip)
配置软件:DEV C++
下载地址:(https://sourceforge.net/projects/orwelldevcpp/)
下载下来后,解压,可以看到共有三个文件夹,我们只要用Pre-built.2”文件夹,这个文件夹下的三个文件夹,分别是动态链接库、头文件、静态链接库
配置头文件及静态链接库
我们直接把头文件拷贝到DEV C++的默认路径的头文件中,即把include文件夹中的三个文件直接拷贝到DEV C++安装目录下Dev-Cpp->include文件夹下,例如我将include中文件拷贝到的位置是
C:\Dev-Cpp\include
同样的办法,我们也可以把lib文件夹下的内容拷贝到DEV C++安装目录下默认的lib寻找路径中,即Dev-Cpp->lib中,例如我将lib文件夹下的x64与x86两个文件直接拷贝到
C:\Dev-Cpp\lib
的下面
配置动态链接库
我们这里将dll文件夹的内容放到我们程序能够找到的位置,我们的方案是把dll下的x64文件夹下的两个文件,即pthreadGC2.dll与pthreadVC2.dll拷贝到C:\Windows\System32下(用于64位程序的运行)把dll下的x86文件夹下的五个文件,拷贝到C:\Windows\SysWOW64下(用于32位程序的运行)
测试
#include <stdio.h>
#include <stdlib.h>
#include <pthread.h>
#include <assert.h>
#include <Windows.h>
#pragma comment(lib,"pthreadVC2.lib")
void *msrp_recv_thread(void *data)
{
int i = 0;
for(i = 1; i <= 3; i++)
{
printf("+++++++++this is thread method: %d \n", i);
}
return NULL;
}
int main()
{
int i = 0;
pthread_t recv_thread;
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
if(pthread_create(&(recv_thread), &attr, msrp_recv_thread, NULL) < 0)
return -1;
for (i = 1; i <= 3; i++)
{
printf("----------this is main method: %d \n", i);
Sleep(1);
}
pthread_attr_destroy(&attr);
getchar();
return 0;
}
测试结果