Condividi tramite


Funzione WdfTimerStop (wdftimer.h)

[Si applica a KMDF e UMDF]

Il metodo WdfTimerStop arresta l'orologio di un timer.

Sintassi

BOOLEAN WdfTimerStop(
  [in] WDFTIMER Timer,
  [in] BOOLEAN  Wait
);

Parametri

[in] Timer

Handle per un oggetto timer del framework ottenuto chiamando WdfTimerCreate.

[in] Wait

KMDF Valore booleano che, se TRUE, specifica che il framework non restituisce finché non vengono eseguite tutte le chiamate in coda alle chiamate di routine posticipate del driver, incluse le funzioni di callback EvtTimerFunc del driver.

UMDF Valore booleano che, se TRUE, specifica che il framework non restituisce finché non vengono eseguite tutte le chiamate in coda alla funzione di callback EvtTimerFunc del timer.

Valore restituito

WdfTimerStop restituisce TRUE se l'oggetto timer si trovava nella coda timer del sistema. In caso contrario, questo metodo restituisce FALSE. Per ulteriori informazioni, vedere la sezione Osservazioni successiva.

Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.

Commenti

Quando un driver chiama WdfTimerStart, il relativo oggetto timer viene aggiunto alla coda di oggetti timer del sistema. Se il timer non è un timer periodico, il sistema rimuove l'oggetto timer dalla coda dopo che è trascorso il "tempo di scadenza" del timer. Se il timer è un timer periodico, l'oggetto timer rimane nella coda finché il driver non chiama WdfTimerStop.

Per altre informazioni sugli oggetti timer del framework, vedere Uso di timer.

WdfTimerStop deve essere chiamato in IRQL = PASSIVE_LEVEL se il parametro Wait è TRUE. In caso contrario, questo metodo deve essere chiamato in IRQL <= DISPATCH_LEVEL.

Non chiamare WdfTimerStop dall'interno di EvtTimerFunc con il parametro Wait impostato su TRUE. In questo modo può verificarsi un deadlock.

Esempio

L'esempio di codice seguente arresta un timer specificato e attende l'esecuzione di tutti i DPC in coda del driver.

WdfTimerStop(
             timerHandle,
             TRUE
             );

Requisiti

Requisito Valore
Piattaforma di destinazione Universale
Versione KMDF minima 1.0
Versione UMDF minima 2,0
Intestazione wdftimer.h (include Wdf.h)
Libreria Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL Vedere la sezione Osservazioni.
Regole di conformità DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Vedi anche

EvtTimerFunc

WdfTimerCreate

WdfTimerStart