一、缘起
最近在看线程池和多线程并发的相关知识点,总是遇到pthread.h这个库头文件,然后查阅后发现这个库大部分情况都是在Linux系统下使用的,windows系统想要使用的话必须自己去编译一下,因此开始从网上找源码包编译。
二、资源
找到的资源数据如下所示,包含各个不同版本的VS工程,直接用VS打开就可以进行编译了,并且支持动态库和静态编译。
三、示例程序
// Project1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include "pch.h"
#include <iostream>
#include <stdio.h>
#include <pthread.h>
#include <assert.h>
void* Function_t(void* Param)
{
printf("This is pthread! ");
pthread_t myid = pthread_self();
printf("threadID=%d ", myid);
return NULL;
}
int main()
{
pthread_t pid;
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setscope(&attr, PTHREAD_SCOPE_PROCESS);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create(&pid, &attr, Function_t, NULL);
printf("-----");
getchar();
pthread_attr_destroy(&attr);
return 1;
}
四、资源列表下载地址
pthread资源包括如下:
1、pthread源码(可自行编译各个版本)
2、编译好的vs2019x64版本
3、示例程序
下载地址
一、缘起
最近在看线程池和多线程并发的相关知识点,总是遇到pthread.h这个库头文件,然后查阅后发现这个库大部分情况都是在Linux系统下使用的,windows系统想要使用的话必须自己去编译一下,因此开始从网上找源码包编译。
二、资源
找到的资源数据如下所示,包含各个不同版本的VS工程,直接用VS打开就可以进行编译了,并且支持动态库和静态编译。
三、示例程序
// Project1.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。
//
#include "pch.h"
#include <iostream>
#include <stdio.h>
#include <pthread.h>
#include <assert.h>
void* Function_t(void* Param)
{
printf("This is pthread! ");
pthread_t myid = pthread_self();
printf("threadID=%d ", myid);
return NULL;
}
int main()
{
pthread_t pid;
pthread_attr_t attr;
pthread_attr_init(&attr);
pthread_attr_setscope(&attr, PTHREAD_SCOPE_PROCESS);
pthread_attr_setdetachstate(&attr, PTHREAD_CREATE_DETACHED);
pthread_create(&pid, &attr, Function_t, NULL);
printf("-----");
getchar();
pthread_attr_destroy(&attr);
return 1;
}
四、资源列表下载地址
pthread资源包括如下:
1、pthread源码(可自行编译各个版本)
2、编译好的vs2019x64版本
3、示例程序
下载地址