Condividi tramite


Funzione AvRtWaitOnThreadOrderingGroup (avrt.h)

Consente ai thread client di un gruppo di ordinamento dei thread di attendere fino a quando non devono essere eseguiti.

Sintassi

AVRTAPI BOOL AvRtWaitOnThreadOrderingGroup(
  [in] HANDLE Context
);

Parametri

[in] Context

Handle di contesto. Questo handle viene restituito dalla funzione AvRtCreateThreadOrderingGroup o AvRtJoinThreadOrderingGroup .

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Al termine di questa funzione, il thread deve completare l'elaborazione per il periodo e quindi chiamare di nuovo la funzione.

Se il thread non riesce a completare l'elaborazione durante l'intervallo di timeout specificato dal thread padre durante la creazione del gruppo, viene eliminato dal gruppo di ordinamento dei thread. Pertanto, quando il thread termina il ciclo di elaborazione, la chiamata successiva ad AvRtWaitOnThreadOrderingGroup ha esito negativo e l'ultimo codice di errore è impostato su ERROR_ACCESS_DENIED.

Se il gruppo di ordinamento dei thread viene eliminato durante l'attesa, questa funzione raggiunge il timeout e restituisce ERROR_ACCESS_DENIED.

Esempio

#include <windows.h>
#include <avrt.h>
#include <stdio.h>

#pragma comment(lib, "Avrt.lib")

HANDLE Context;

int main( void )
{
    while(AvRtWaitOnThreadOrderingGroup(Context))
    {
        // Complete task for this period.
    }

return 0;
}

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione avrt.h
Libreria Avrt.lib
DLL Avrt.dll

Vedi anche

Servizio di ordinamento dei thread