VS2015 添加 pthread 库
在 VS2015 中使用 POSIX 线程模型
1. 安装 pthread 库
1.1 头文件
-
将下载的 pthread 库压缩包解压得到
Pre-built.2
、pthreads.2
和QueueUserAPCEx
三个目录 -
使用文本编辑器打开
Pre-built.2/include/pthread.h
,添加定义#define HAVE_STRUCT_TIMESPEC
,如下所示#if !defined( PTHREAD_H ) #define PTHREAD_H #define HAVE_STRUCT_TIMESPEC // 避免重复定义 struct timespec
-
将
Pre-built.2/include
中的三个头文件复制到 VS2015 的%InstallRoot%/VC/include
1.2 静态库
-
将
Pre-built.2/lib/x86
中的三个 lib 文件放到 VS2015 的%InstallRoot%/VC/lib
-
将
Pre-built.2/lib/x64
中的一个 lib 文件放到 VS2015 的%InstallRoot%/VC/lib/amd64
或者%InstallRoot%/VC/lib/x64
1.3 动态库
-
将
Pre-built.2\dll\x86
中的五个 dll 文件放到C:\Windows\SysWOW64
-
将
Pre-built.2\dll\x64
中的两个 dll 文件放到C:\Windows\System32
嗯,对,没错,就是 86 对 64,64 对 86,我没写错!
2. 示例程序
#include <stdio.h>
#include <pthread.h>
#ifdef _WIN32
#pragma comment(lib,"pthreadVC2.lib")
#endif // _WIN32
void * thread_entry(void* argv)
{
pthread_t self = pthread_self();
printf("I am %lld\n", (long long)&self);
return 0;
}
int main(int argc, char* argv[])
{
pthread_t thread1;
pthread_t thread2;
pthread_create(&thread1, 0, thread_entry, 0);
pthread_create(&thread2, 0, thread_entry, 0);
pthread_join(thread1, 0);
pthread_join(thread2, 0);
return 0;
}
本文来自博客园,作者:尽千帆,转载请注明原文链接:https://www.cnblogs.com/lonelyraft/p/vs2015pthread.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix