boost有interrupt()函数,可以直接打断终止,可以打断sleep。
std的没有interrupt(),只能jion,不能打断sleep。
boost自定义线程接口
要安装boost库,包含头文件和lib,还要链接
CMakeLists.txt文件如下
cmake_minimum_required(VERSION 2.8)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -pthread -m64 -std=c++11 -fPIC -fno-strict-aliasing")
project(test2)
#包含lib文件夹
link_directories("/root/soft/boost_1_67_0/lib")
#包含头文件夹
include_directories("." "/root/soft/boost_1_67_0/")
add_executable(${PROJECT_NAME} "main.cpp" )
#链接用到的库
target_link_libraries (${PROJECT_NAME} boost_chrono boost_system boost_thread)
#ifndef BASE_THREAD_H
#define BASE_THREAD_H
#include<atomic>
#include<boost/thread.hpp>
#include