C/C++Boost库初学

Posted mick_seu

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C/C++Boost库初学相关的知识,希望对你有一定的参考价值。

Boost库初次使用,C++11里很多新特性都来自Boost库。我的Boost库安装参考:http://blog.csdn.net/this_capslock/article/details/47170313


#include <boost/thread.hpp> 
#include <iostream>
#include <cstdlib>
#include <thread>
#include <chrono>

using namespace std;

volatile bool isRuning = true;

void func1()

    static int cnt1 = 0;
    while(isRuning)
    
        cout << "func1:" << cnt1++ << endl;
        sleep(1);
    


void func2()

    static int cnt2 = 0;
    while(isRuning)
    
        cout << "\\tfunc2:" << cnt2++ << endl;
        sleep(2);
    


int main()

    boost::thread thread1(&func1);
    boost::thread thread2(&func2);

	std::this_thread::sleep_for(std::chrono::seconds(9));
    isRuning = false;

    thread2.join();
    thread1.join();
    cout << "exit" << endl;
    return 0;

编译指令:g++ b.cc -o b -lboost_thread -lboost_system -std=c++11

输出结果:

func1:	func2:00

func1:1
func1:2
	func2:1
func1:3
	func2:2
func1:4
func1:5
	func2:3
func1:6
func1:7
	func2:4
func1:8
exit

可以发现,boost::thread  和 std::thread 的用法蛮相似的。

以上是关于C/C++Boost库初学的主要内容,如果未能解决你的问题,请参考以下文章

C/C++学院0903-Boost/线性表/哈希存储

boost:asio网络库初学之echo服务器客户端实现

boost:asio网络库初学之echo服务器客户端实现

CMake配置工程链接库

使用 Boost/Wave C/C++ 预处理器的选择性宏扩展

最佳 C/C++ 网络库