Partager via


IWorkerThreadClient::Execute

Appliquez cette méthode pour exécuter le code lorsque le handle associé à cet objet est signalé.

HRESULT Execute( 
   DWORD_PTR dwParam, 
   HANDLE hObject  
);

Paramètres

  • dwParam
    Le paramètre d'utilisateur.

  • hObject
    Le handle qui est devenu signalé.

Valeur de retour

S_OK de retour en cas de réussite, ou une erreur HRESULT en cas de échec.

Notes

Le handle et les DWORD/Pointer passés à cette méthode précédemment associés à cet objet par un appel à CWorkerThread::AddHandle.

Exemple

Le code suivant montre une implémentation simple d' 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;
}

Configuration requise

Header: atlutil.h

Voir aussi

Référence

Interface d'IWorkerThreadClient

CWorkerThread::AddHandle