使用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;
}

 

相关文章:

  • 2021-09-14
  • 2021-08-22
  • 2021-06-21
  • 2022-12-23
  • 2021-08-26
  • 2021-07-07
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-04-20
  • 2021-07-08
  • 2022-12-23
  • 2021-09-24
  • 2021-07-10
  • 2021-09-15
相关资源
相似解决方案