c++中实现sleep的三种方式(跨平台)

1、stl方式

//by 鸟哥 用stl实现sleep
//有疑问请留言或加群 1032082534
#include 
#include 
#include 
using namespace std;
int main(){
    cout<<"sleep前"<<endl;
    std::this_thread::sleep_for(std::chrono::milliseconds(3000));
    cout<<"sleep后"<<endl;
    
}

运行结果:

sleep前
sleep后

2、用boost实现

//by 鸟哥 用boost实现sleep
//有疑问请留言或加群 1032082534
#include 
#include 
using namespace std;
int main()
{
    cout<<"sleep前"<<endl;
    
    boost::this_thread::sleep( boost::posix_time::seconds(3) );
    cout<<"3秒后"<<endl;
    boost::this_thread::sleep( boost::posix_time::milliseconds(3000) );
    cout<<"3秒后"<<endl;
    return 0;
}

运行结果:

sleep前
3秒后
3秒后

3、

//by 鸟哥 实现sleep
//有疑问请留言或加群 1032082534
#include 

#ifdef _WIN32
    #include 
#else
    #include 
#endif // _WIN32

using namespace std;


void sleepcp(int milliseconds) // 跨平台 sleep 函数
{
    #ifdef _WIN32
        Sleep(milliseconds);
    #else
        usleep(milliseconds * 1000);
    #endif // _WIN32
}
int main()
{
    cout << "sleep前" << endl;
    sleepcp(3000);
    cout << "3秒后" << endl;
}

sleep前
3秒后

你可能感兴趣的:(c++)