C++のタイマーの使い方

C++では、std::chrono ライブラリを使用することでタイマーを利用できます。以下にタイマーを利用する簡単な例を示します。

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

void timer_callback()
{
    std::cout << "Timer expired!" << std::endl;
}

int main()
{
    // 创建一个定时器线程
    std::thread timer_thread([](){
        // 等待 2 秒
        std::this_thread::sleep_for(std::chrono::seconds(2));
        // 调用定时器回调函数
        timer_callback();
    });

    // 主线程执行其他任务
    std::cout << "Main thread is working..." << std::endl;

    // 等待定时器线程结束
    timer_thread.join();

    return 0;
}

上記のサンプルでは、2 秒待ってから timer_callback 関数を呼び出すタイマーのスレッドを作成しました。タイマーのスレッドが終了するまで、メインのスレッドは他の作業を行います。プログラムを実行すると、メインのスレッドが「Main thread is working…」と出力し、2 秒後にタイマーのスレッドが「Timer expired!」と出力します。

std::chronoライブラリを使用して簡単なタイマーを実装する方法を説明しました。さらに高度なタイマー機能を実装する場合は、Boost.Asioライブラリなどのより高度なタイマーライブラリを使用することもできます。

bannerAds