Share via


CancelWaitableTimer 関数 (synchapi.h)

指定された待機可能タイマーを非アクティブ状態に設定します。

構文

BOOL CancelWaitableTimer(
  [in] HANDLE hTimer
);

パラメーター

[in] hTimer

タイマー オブジェクトへのハンドル。 CreateWaitableTimer または OpenWaitableTimer 関数は、このハンドルを返します。 ハンドルには 、TIMER_MODIFY_STATE アクセス権が必要です。 詳細については、「 同期オブジェクトのセキュリティとアクセス権」を参照してください。

戻り値

関数が成功すると、戻り値は 0 以外になります。

関数が失敗した場合は、0 を返します。 詳細なエラー情報を得るには、GetLastError を呼び出します。

解説

CancelWaitableTimer 関数は、タイマーのシグナル状態を変更しません。 タイマーを停止してから、シグナル状態に設定し、未処理の APC を取り消します。 したがって、タイマーに対して待機操作を実行するスレッドは、タイムアウトするか、タイマーが再アクティブ化され、その状態が signaled に設定されるまで待機したままです。 タイマーが既にシグナル状態にある場合は、その状態のままです。

タイマーを再アクティブ化するには、 SetWaitableTimer 関数を 呼び出します。

この関数を使用するアプリケーションをコンパイルするには、 _WIN32_WINNT を 0x0400 以降として定義します。 詳細については、「 Windows ヘッダーの使用」を参照してください。

要件

要件
サポートされている最小のクライアント Windows XP [デスクトップ アプリ | UWP アプリ]
サポートされている最小のサーバー Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ]
対象プラットフォーム Windows
ヘッダー synchapi.h (Windows Server 2003、Windows Vista、Windows 7、Windows Server 2008 Windows Server 2008 R2 の Windows.h を含む)
Library Kernel32.lib
[DLL] Kernel32.dll

関連項目

CreateWaitableTimer

OpenWaitableTimer

SetWaitableTimer

同期関数

待機可能タイマー オブジェクト