BOOST库使用方法(有手就行)

开发环境:

       Win7,VS2015 - update 3,boost_1_16_0 

1、下载boost安装包,约125MB。

2、解压到指定目录,解压后显示大小437MB,占用空间546MB,包含47988个文件,4409个文件夹。

3、按如下路径打开命令提示符:

        |——开始菜单

        |————Visual Studio 2015

        |——————Visual Studio Tools

        |————————Windows Desktop Command Prompts

        |——————————VS2015 x86 本机工具命令提示符

4、cd到boost解压目录——bootstrap.bat所在目录,运行bootstrap.bat。不到30秒,执行过程完成,得到四个新文件:

        b2.exe

        bjam.exe

        bootstrap.log

        project-config.jam

5、继续在当前命令提示符中运行bjam.exe,对boost进行编译。

        编译过程持续了约15分钟,终于结束。看看目录文件:大小2.60GB,占用空间2.71GB,包含49818个文件,4710个文件夹。

6、在.\stage\lib下看到生成了非常多的静态库,在VS项目中设置:

        a.附加包含目录:包含到 **\boost_1_60_0

        b.附加库目录:包含到**\boost_1_60_0\stage\lib

7、只取所需内容,随项目上传或分享:

        单独创建一个目录,取原\boost_1_60_0\目录下的\boost文件夹及\stage文件夹,复制到项目中,在上面一步设置VS相关依赖时自行调整即可。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Boost是一个跨平台的C++,提供了许多多线程编程的工具和类。下面是使用Boost多线程编程的一些方法: 1. 创建线程 ```cpp #include <boost/thread.hpp> void my_thread_func() { // 线程执的代码 } int main() { // 创建新线程 boost::thread my_thread(my_thread_func); // 等待线程结束 my_thread.join(); return 0; } ``` 2. 线程同步和互斥 ```cpp #include <boost/thread.hpp> boost::mutex my_mutex; void my_thread_func() { // 申请互斥锁 boost::mutex::scoped_lock lock(my_mutex); // 互斥锁保护的代码 } int main() { // 创建新线程 boost::thread my_thread(my_thread_func); // 等待线程结束 my_thread.join(); return 0; } ``` 3. 线程池 ```cpp #include <boost/thread.hpp> #include <boost/bind.hpp> void my_thread_func(int arg) { // 线程执的代码 } int main() { // 创建线程池 boost::thread_pool my_thread_pool(4); // 提交任务到线程池 for (int i = 0; i < 10; ++i) { my_thread_pool.submit(boost::bind(my_thread_func, i)); } // 等待任务完成 my_thread_pool.wait(); return 0; } ``` 4. 条件变量 ```cpp #include <boost/thread.hpp> #include <boost/date_time.hpp> boost::mutex my_mutex; boost::condition_variable my_cond_var; void my_thread_func() { // 申请互斥锁 boost::mutex::scoped_lock lock(my_mutex); // 等待条件变量 my_cond_var.wait(lock); // 条件满足后继续执 } int main() { // 创建新线程 boost::thread my_thread(my_thread_func); // 等待一段时间 boost::this_thread::sleep(boost::posix_time::seconds(2)); // 通知条件变量 my_cond_var.notify_one(); // 等待线程结束 my_thread.join(); return 0; } ``` 以上是使用Boost多线程编程的一些方法,可以根据实际需求进选择和组合,以实现更加复杂的多线程应用程序。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值