C++基础-等待固定时间cv.wait_until(lk, end)(等待固定时间) chrono::high_resolution_clock::now()(获得当前时间)


使用cv.wait_unitil(lk, end)等待固定的时间 

int run()
{
    auto start = chrono::high_resolution_clock::now(); //当前时间
    auto end = start + chrono::milliseconds(5000); //结束时间
    unique_lock<mutex> lk(m);
    while(!done)
    {
        if(cv.wait_until(lk, end) == cv_status::timeout){
            done = true;
            break;
        }
    }
    system("pause");



}

int main1()
{
    thread t1(run);

    cin.get();
}

计算程序执行的时间

int main()
{
    time_t t1, t2;
    auto start = chrono::high_resolution_clock::now(); //当前时间
    t1 = time(&t1);
    double db = 0;
    for(int i = 0; i < 1000000000; i++){
        db += i;
    }
    t2 = time(&t2);
    auto end = chrono::high_resolution_clock::now();
    cout << (end - start).count() << endl;
    cout << difftime(t2, t1) << endl;
}

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM