IWorkerThreadClient::Execute
このオブジェクトに関連付けられているハンドルがシグナル状態になるときにコードを実行するには、このメソッドを実装します。
HRESULT Execute(
DWORD_PTR dwParam,
HANDLE hObject
);
パラメーター
dwParam
ユーザーのパラメーター。hObject
シグナル状態になったハンドル。
戻り値
成功の戻り値 S_OK、またはエラーの HRESULT。
解説
このメソッドに渡されたハンドルと DWORD/pointer は、を呼び出して CWorkerThread::AddHandleにこのオブジェクトによって以前に関連付けられました。
使用例
次のコードは IWorkerThreadClient::Executeの簡単な実装を示しています。
HRESULT Execute(DWORD_PTR dwParam, HANDLE hObject)
{
// Cast the parameter to its known type.
LONG* pn = reinterpret_cast<LONG*>(dwParam);
// Increment the LONG.
LONG n = InterlockedIncrement(pn);
// Log the results.
printf_s("Handle 0x%08X incremented value to : %d\n", (DWORD_PTR)hObject, n);
return S_OK;
}
必要条件
Header: atlutil.h