近日在研读Bruce Eckel的《C++编程思想 第二卷实用编程技术》。阅读到"并发"这章,作者使用开源的ZThread作为线程库。总结下自己在CodeBlocks下配置ZTread的过程.
1,所需安装程序.(附件提供,包括libthread.a)
(1)ZThread-2.3.2
下载地址:
http://zthread.sourceforge.net
(2)附加工具:Patch for Windows 之patch-2.5.9-7-setup.exe
下载地址:
http://sourceforge.net/projects/gnuwin32/files/patch/
(3)ZThread参数修改文件:zthread-2.3.2-no-fpermissive.diff
下载地址:
http://bugs.gentoo.org/attachment.cgi?id=161093
将里面的内容复制到记事本,然后保存为 zthread-2.3.2-no-fpermissive.diff
2,详细步骤:
(1)解压ZThread-2.3.2
(2)将zthread-2.3.2-no-fpermissive.diff 文件拷贝到zthread-2.3.2\目录中。
(3)安装Patch for Windows,添加环境变量
我的电脑-属性-高级-环境变量-系统变量,找到"PATH"-编辑-在末尾添加";C:\Program Files\GnuWin32\bin",即patch安装目录下的bin路径。
(4)开始-运行-cmd;进入zthread的安装目录.以我为例:cd c:\zthread-2.3.2.执行:
patch -p0 -i zthread-2.3.2-no-fpermissive.diff
这个diff文件是修改了zthread-2.3.2\include\zthread下的某些文件。所以,如果该命令执行错误的话,那么,将 zthread-2.3.2\include\zthread下的东西删除干净,然后拷贝一份新的过去 ,再执行。这样就不会受到执行错误的痕迹的影响。
如果成功应该出现下面的信息:
patching file 'include/zthread/Guard.h'
patching file 'src/MutexImpl.h'
如图:
(5)打开CodeBlocks,FILE-NEW-PROJECT-static library,然后选择菜单Project中Add files...,将zthread-2.3.2\\src\目录下的所有.cxx文件添加进来.如下图所示:
(6)右键单击左侧工程名,选择Build Option.在search directorys--添加 zthread-2.3.2\include路径.如下图所示:
(7)编译-链接,就会产生一个.a的静态库文件.将该文件拷贝到一个目录下.如:C:\mylib\libthread.a,便于下次使用.
(8)正式开始使用ZThread库。
新建一个console工程,如(6),添加zthread-2.3.2\include路径.
添加静态库:右键单击左侧工程名,选择Build Option.在Linker settings--添加libthread.a,在文本框中填写-lwinmm 回车.如下图所示:
配置完成,即可正确使用ZThread了.
- 大小: 44.5 KB
- 大小: 151.5 KB
- 大小: 161.9 KB
- 大小: 141.2 KB
分享到:
相关推荐
ZThread库是一个在C++编程语言中用于实现多线程功能的开源库,它在《Thinking in C++》这本经典教程中被广泛引用。在实际的开发环境中,多线程编程是提升程序效率和并发处理能力的重要手段,ZThread库为此提供了方便...
3. **库目录**:如果Zthread库是动态链接库(.dll),还需在“配置属性”>“链接器”>“常规”下的“附加库目录”中,添加.dll文件的存放路径。 4. **链接器选项**:如果使用了动态链接库,还需要在“配置属性”>...
例如,它可能包含如`ZThread_create()`用于创建线程,`ZThread_join()`用于等待线程结束,以及`ZThread_mutex()`等同步机制,帮助开发者避免常见的竞态条件和死锁问题。 ZThread库还可能提供了一些高级特性,比如...
ZThread 库适用于那些希望在不同操作系统上实现多线程应用的开发者,如 Windows、Linux 和 macOS 等。它的主要目标是通过提供统一的 API,让开发者能够编写可移植的多线程代码。 ### 1. ZThread 的基本概念 - **...
本文将深入探讨ZThread库2.3.1版本及其与POSIX pthread库的关系,同时介绍如何在Windows平台上编译和使用这两个库。 首先,ZThread是一个开源的C++线程库,它为开发人员提供了简化线程操作的接口。ZThread的设计...
3. 在项目属性中,设置配置类型为“Static Library”(静态库),确保目标平台与操作系统兼容。 4. 将ZThread源代码添加到项目中,包括头文件和源文件。 5. 编译项目,如果一切顺利,将会生成名为ZThread.lib的静态...
- **操作系统支持**:ZThread库设计时考虑了跨平台性,能够运行在Windows、Linux、macOS等多种操作系统上,使得代码可移植性增强。 - **API适配**:针对不同操作系统,ZThread库内部会适配相应的系统调用,如...
7. **移植性**:ZThread-2.3.2是跨平台的,可以在多种操作系统上运行,包括Linux、Windows和Mac OS X等,这得益于其对POSIX线程API的良好封装。 8. **文档与社区支持**:ZThread拥有详细的文档和活跃的社区,用户...
**ZThread库与VS2005的结合** 在C++编程中,多线程技术是一种常见的提升程序执行效率的方法,允许程序同时执行多个任务。`ZThread`是一个开源的C++线程库,它提供了方便的接口来管理和操作线程,简化了多线程编程的...
总的来说,安装ZThread 2.3.2在CentOS上是一个相对标准的过程,涉及到下载源码、配置、编译和安装步骤。在其他Linux发行版或特定环境中,可能需要额外的步骤或调整。对于开发者来说,理解这些流程是管理和维护软件...
6. **跨平台兼容性**:ZThread的一个重要特性是它的跨平台性,这意味着无论是在Windows、Linux还是其他操作系统上,开发者都可以使用相同的API进行多线程编程,减少了移植的复杂性。 7. **编译环境兼容**:提供的...
ZThread的最新源文件及自己编译生成的静态库文件,动态库文件,可以直接用来进行C++的并发编程,也可以自己编译,Windows及Linux的编译方法见http://blog.csdn.net/lanbing510/article/details/8441258
在IT领域,多线程编程是提升程序性能和并发处理能力的重要手段,特别是在现代计算机系统中,多核心处理器的普及使得多线程技术成为必备技能。`ZThread` 是一个针对C++设计的多线程库,版本为2.3.2,它提供了一种简洁...
zthread patch,主要解决编译和BlockingQueue的问题。 使用方法: cd zthread_xxx_dir patch -p1 < zthread.patch
6. **跨平台兼容性**:zthread2.3.2支持多种操作系统,包括Windows、Linux、Mac OS等,这得益于其底层的系统API抽象,使得代码可以在不同的平台上无缝运行。 了解了这些核心概念后,我们再来看看zthread-all-2.3.2...
在Windows平台下,动态链接库(DLL)是一种可执行文件格式,允许多个程序共享同一段代码,从而节省内存并便于软件更新。在本实例中,ZThread库已通过Visual Studio 2005(VS2005)编译完成,并导出了大部分常用接口...
ZThread-2.3.2 C++多线程库,在linux下编多线程程序很值得参考
ZThread是开源的多线程库,这里提供了已经编译好的静态库。
然而,从给出的标签“woo Wo”中,我们可以推测这可能与一个名为“Woo”的项目或技术有关,但没有足够的上下文来确定其确切含义。 接下来,我们将分析压缩包子文件的文件名称列表,这些文件名提供了项目构建和管理...