溫馨提示×

c++ wait_for怎樣使用

c++
小樊
143
2024-11-24 11:58:50
欄目: 編程語言

wait_for是C++標準庫 <chrono> 中的一個函數,用于等待一個給定的時間間隔。它接受兩個參數:一個表示等待時間的 std::chrono::duration 對象,以及一個表示是否應該繼續等待的布爾值(通常命名為 is_timeout)。如果 is_timeouttrue,則當指定的時間間隔過去后,wait_for 將返回;如果為 false,則 wait_for 將一直等待,直到某個條件滿足為止。

下面是一個簡單的示例,演示了如何使用 wait_for 函數:

#include <iostream>
#include <chrono>
#include <thread>

int main() {
    std::cout << "Waiting for 5 seconds...\n";

    // 等待5秒鐘
    auto result = std::chrono::system_clock::now();
    std::this_thread::sleep_for(std::chrono::seconds(5));
    auto end = std::chrono::system_clock::now();

    std::chrono::duration<double> elapsed = end - result;
    if (elapsed.count() >= 5) {
        std::cout << "5 seconds have passed.\n";
    } else {
        std::cout << "Time has not passed yet.\n";
    }

    return 0;
}

在這個示例中,我們使用 std::this_thread::sleep_for 函數使當前線程休眠5秒鐘。然后,我們使用 std::chrono::system_clock::now() 獲取當前時間,并計算經過的時間。最后,我們根據經過的時間判斷是否已經等待了5秒鐘。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女