且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

我可以在控制台 C++ 应用程序中使用 SetTimer() API 吗?

更新时间:2023-02-13 07:47:17

您可以使用 CreateTimerQueueTimer 函数

HANDLE timer_handle_;
CreateTimerQueueTimer(&timer_handle_, NULL, TimerProc, user_object_ptr, 10, 0, WT_EXECUTEDEFAULT);
//callback
void TimerProc(PVOID lpParameter, BOOLEAN TimerOrWaitFired)
{
    user_object* mgr = (user_object*) lpParameter;
    mgr->do();
    DeleteTimerQueueTimer(NULL, timer_handle_, NULL);
    timer_handle_ = NULL;
}