在Windows下使用Dev-C++开发基于pthread.h的多线程程序

一直都是使用Dev-Cpp5编写C/C++程序,感觉小巧方便。
不过,在学习C++的多线程编程的时候,发现添加“#include <phread.h>”时,编译器会提示找不到pthread.h文件。
搜索了一下,发现原来Dev-Cpp虽然内置的是MinGW编译器,但是没有包含pthread.h库文件,如果要在Windows下使用Dev开发多线程,需要另外添加pthread。
具体方法如下:
[b] [list]
[*]一、下载Windows版本的pthread
[/list][/b]
目前最新版本是:pthreads-w32-2-8-0-release.exe。
主页地址:[url]http://sourceware.org/pthreads-win32/[/url]
ftp地址:[url]ftp://sourceware.org/pub/pthreads-win32/ [/url]
[b] [list]
[*]二、解压pthread到指定目录
[/list][/b]
双击pthreads-w32-2-8-0-release.exe,会出现解压对话框,
"browse"选择指定目录,"extract"解压,"done"完成。
我选择的目录是:D:\Program Files\DEV-CPP\Pthread
截图如下:

[img]http://dl.iteye.com/upload/attachment/324269/e6e93b48-6d48-3486-9abc-8f800e73de84.jpg[/img]

完成后,该目录会多出三个文件夹:。Pre-built.2,pthreads.2,QueueUserAPCEx。
[b] [list]
[*]三、配置Dev-C++编译选项[/list][/b]
以中文版的Dev-C++为例:
1)点击“工具”→“编译选项”→“目录”→“c++包含文件”,浏览到刚才解压的pthread目录,选择D:\Program Files\DEV-CPP\Pthread\Pre-built.2\include,添加。

[img]http://dl.iteye.com/upload/attachment/324271/98b33fd8-e78b-3cba-a8b3-90284e0c40d2.jpg[/img]

2)点击“工具”→“编译选项”→“目录”→“库”,浏览到刚才解压的pthread目录,选择D:\Program Files\DEV-CPP\Pthread\Pre-built.2\lib,添加。

[img]http://dl.iteye.com/upload/attachment/324273/4cb0316a-47dd-3971-9ab5-6f80cce2e0e1.jpg[/img]

[b] [list]
[*]四、配置Dev-C++当前工程属性[/list][/b]
提示:如果是在DevCpp中新建一个文件,“工程-工程属性”是不可用的,所以,应该先新建一个工程,然后再在该工程中添加多线程的文件。
点击“工程”→”工程属性”→“参数”→“加入库或者对象”,选中D:\Program Files\DEV-CPP\Pthread\Pre-built.2\lib\libpthreadGC2.a,确定。

[img]http://dl.iteye.com/upload/attachment/324275/f83f4fa0-4592-3ffe-bb6f-b39a1b25b5f9.jpg[/img]

[b] [list]
[*]五、添加代码[/list][/b]
到此,DevCpp的多线程编程环境配置完毕,添加代码即可。
示例:

//日期:2010.9.30 作者:烟过留声
#include <iostream>
#include <pthread.h>
#include <stdlib.h>

using namespace std;

void* MyFunc(void* arg)
{
cout<<"the child thread."<<endl;
return NULL;
}

int main(int args, char* argv[])
{
pthread_t tid;
cout<<"in the main thread."<<endl;
pthread_create(&tid, NULL, MyFunc, NULL);
cout<<"return to the main thread."<<endl;
system("pause");
return 0;
}



参考:
江義華的部落格(cyh's blog)中也有说到这个问题,不过需要代理才能访问,且图片失效。
[url]http://tw.myblog.yahoo.com/yh-chiang/article?mid=-2&next=692&l=f&fid=9[/url]
Windows使用Dev-C++开发基于pthread.h的多线程程序实例 一、下载Windows版本的pthread 目前最新版本是:pthreads-w32-2-9-1-release.zip。 二、解压pthread到指定目录 我选择的目录是:E:\DEV-CPP\Pthread 完成后,该目录会多出三个文件夹:Pre-built.2,pthreads.2,QueueUserAPCEx。 三、配置Dev-C++编译选项 1)点击“工具”→“编译选项”→“目录”→“c++包含文件”,浏览到刚才解压的pthread目录,选择E:\DEV-CPP\Pthread\Pre-built.2\include,添加。 2)点击“工具”→“编译选项”→“目录”→“库”,浏 立即下载

相关推荐

Oracle Scheduler任务故障诊断 实战指南

当基础环境无异常时,需聚焦任务本身的配置与状态。定义(JOB)→ 调度(SCHEDULE)→ 执行(SLAVE进程)→ 日志(LOG),每个环节都可能存在卡点。Oracle Scheduler任务的“隐性故障”看似棘手,实则是环境配置、资源竞争、时间逻辑等问题的集中体现。通过本文的诊断工具和排查思路,你可以构建从“基础环境→任务配置→执行链路→日志追踪”的全维度分析体系,让每一个“消失”的任务都无所遁形。

Nuzbb的博客 1060

linux移植win项目找不到pthread.h

找不到pthread.h 1.Pthread是由POSIX提出的一套通用的线程库,在Linux平台下,它被广泛的支持,而windows平台下,却并不被支持,可以下载pthreads-w32替换! 2.如果不考虑下载第三方库替换,可以用window自带线程接口 (1)宏定义区分两个系统不同头文件 #if defined(_WINDOWS) #include <windows.h> #include <process.h> #endif #if defined(_LINUX) #incl

weixin_43885541的博客 1789

【北大核心-代码复现】基于 VMD-FFCM-iTransformer 光伏功率短期预测

【北大核心-代码复现】基于 VMD-FFCM-iTransformer 光伏功率短期预测

741

pthread移植到windows

 将pthread移植到windows中有两种方法:1.windows中安装cygwin开发环境,cygwin已经包含了pthread库2.下载pthreads-win32,官方站是 http://sourceware.org/pthreads-win32/

cppmaster的专栏 1048

Windows使用Dev-C++开发基于pthread多线程

一、下载Windows版本的pthread 目前最新版本为:pthreads-w32-2-9-1-release.zip 二、解压pthread到指定目录 我选择的是D:\DEV-CPP\Pthread 完成后,该目录会多出三个文件夹:Pre-built.2 ,pthreads.2 , QueueUserAPCEx 。 三、配置Dev-C++编译选项 1、 点击"Tools" ---->“...

qq_41681845的博客 3490

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://sourcew...

weixin_42738495的博客 2699

DevC++ 用C语言的多线程 实现简单的客户端和服务器

Devc++ 用c语言线程函数 和socket嵌套字实现多线程接受消息服务器 的完整过程,配有相应的客户端

a1309602336的博客 1474

Windows使用Dev-C++开发基于pthread.h的多线程程序【转】

Windows使用Dev-C++开发基于pthread.h的多线程程序【转】 在Windows使用Dev-C++开发基于pthread.h的多线程程序 文章分类:C++编程 一直都是使用Dev-Cpp5编写C/C++程序,感觉小巧方便。 不过,在学习C++多线程编程的时候,发现添加“#inclu...

weixin_30256505的博客 255

Windows使用Dev-C++开发基于pthread.h的多线程程序

一、下载Windows版本的pthread 目前最新版本是:pthreads-w32-2-9-1-release.zip。 二、解压pthread到指定目录 我选择的目录是:E:\DEV-CPP\Pthread 完成后,该目录会多出三个文件夹:Pre-built.2,pthreads.2,QueueUserAPCEx。 三、配置Dev-C...

aipiannian6725的博客 311

windowsDEV-C++无法连接到pthread.h的解决办法

参考的这个博文,原博文有图片:http://lslin.iteye.com/blog/776325 (我只是为了方便写、copy一遍) dev-C++编写C/C++程序时,非常方便轻巧,但是今天学习多线程的时候发现编译器不能连接到Pthread.h中的函数,编译一直报错。 在网上寻找发现原来Dev-Cpp虽然内置的是MinGW编译器,但是没有包含pthread.h库文件,如果要在Win...

weixin_30871293的博客 556

多线程编程学习笔记2】分别在linux环境下和Windows环境下写出我们的第一个多线程程序_在windows或linux操作系统上,编写一个多线程程序并运行要求至少3个线程,编号n

DEVC++安装目录下,正好存在这两个文件,这两个文件存在的目录是D:\Dev-Cpp\MinGW64\x86_64-w64-mingw32\include和D:\Dev-Cpp\MinGW64\x86_64-w64-mingw32\lib,而这两个路径是被默认加入了DevC++的包含路径的,因此我们可以直接在DEVC++上编译执行上面的多线程程序。*void***,这个其实知识函数参数的一个类型转换,不影响程序的执行,通过下面的提示,我们只要在编译命令下加入 -fpermissive 即可。

m0_60229361的博客 969

红熊猫Dev-C++配置指南:轻量IDE玩转C/C++开源项目

集成开发环境(IDE)是程序员进行代码编写、编译和调试的核心工具,其原理在于将编辑器、编译器、调试器等工具集成在一个界面中,提升开发效率。对于C/C++语言学习与项目开发而言,选择合适的IDE能有效降低环境配置复杂度,加速学习曲线。红熊猫Dev-C++作为一款轻量级IDE,继承了经典Dev-C++的简洁特性,并进行了现代化改进,特别适合教学、竞赛及小型项目开发场景。其价值在于以极低的资源占用提供快速的编译反馈,帮助开发者聚焦于C/C++核心语法与算法逻辑。在实际应用中,通过合理配置编译器参数、链接库以及调试

a359798678的博客 331

windows使用pthread

最近在看《C++多核高级编程》这本书,收集了些有用的东西,方便在windows使用POSIX标准进行Pthread开发,有利于跨平台。 -------------------------------------------------- windows使用pthread库时间:2010-01-27 07:41来源:罗索工作室 作者:落鹤生 点击:1220次 我听很多人都说pthreads...

mmdev 157

Windows使用VS Code与MinGW搭建高效C/C++开发环境

C/C++作为系统级编程语言,其编译过程涉及编译器、链接器、调试器等工具链的协同工作。理解编译原理是掌握程序从源代码到可执行文件转换的关键,这有助于开发者深入理解计算机底层运行机制。在工程实践中,一个高效、可定制的开发环境能显著提升编码与调试效率,尤其对于嵌入式开发、跨平台项目等场景。本文聚焦于在Windows平台,通过配置轻量级的VS Code编辑器与MinGW-w64 GCC工具链,构建一个贴近Linux环境的C/C++开发工作流,涵盖环境变量配置、tasks.json构建任务定义、launch.jso

weixin_34248705的博客 413

Linux C++ HTTP客户端实战:基于cpp-httplib的完整开发指南

HTTP协议是现代网络通信的基石,它定义了客户端与服务器之间请求与响应的标准格式。其工作原理基于请求-响应模型,通过TCP/IP协议栈实现可靠的数据传输。在C++开发中,高效处理HTTP通信能极大提升应用与Web服务、API接口的集成能力,对于构建微服务、数据采集工具或云原生应用至关重要。cpp-httplib作为一个轻量级、头文件库,完美解决了C++标准库缺乏原生HTTP支持的问题。它通过简洁的现代C++ API封装了底层socket操作,支持GET、POST等多种请求方法,并内置了连接池、超时控制等高级

cuixie2370的博客 495

多线程编程学习笔记2】分别在linux环境下和Windows环境下写出我们的第一个多线程程序_在windows或linux操作系统上,编写一个多线程程序并运行要求至少3个线程,编号n(1)

thead_result:接收 ThreadFun() 函数的返回值,或者接收 pthread_exit() 函数指定的值。返回值 res 为 0 表示线程创建成功,反之则创建失败。返回值 res 为 0 表示函数执行成功,反之则执行失败。NULL:不传递给 ThreadFun() 函数任何参数。ThreadFun:新建线程要执行的任务。NULL:不修改新建线程的任何属性。&mythread:要创建的线程。mtThread:指定等待的线程。//输出线程执行完毕后返回的数据。等待指定线程执行完毕。

m0_60144796的博客 412
上一篇: java swing技巧1:基于图像的组件-JLabel、JButton、JPanel
jay314159
博客等级 码龄19年 20粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值