Condividi tramite


TimerTask interface

Restituito da DurableClient.createTimer(Date) se la chiamata non è yield-ed. Rappresenta un timer in sospeso. Per altre informazioni, vedere la documentazione su Task.

Per il completamento di un'orchestrazione, è necessario completare o annullare tutti i timer in sospeso.

esempio di

Annullare un timer

// calculate expiration date
const timeoutTask = context.df.createTimer(expirationDate);

// do some work

if (!timeoutTask.isCompleted) {
    // An orchestration won't get marked as completed until all its scheduled
    // tasks have returned, or been cancelled. Therefore, it is important
    // to cancel timers when they're no longer needed
    timeoutTask.cancel();
}

esempio di

Creare un timeout

const now = Date.now();
const expiration = new Date(now.valueOf()).setMinutes(now.getMinutes() + 30);

const timeoutTask = context.df.createTimer(expirationDate);
const otherTask = context.df.callActivity("DoWork");

const winner = yield context.df.Task.any([timeoutTask, otherTask]);

if (winner === otherTask) {
    // do some more work
}

if (!timeoutTask.isCompleted) {
    // An orchestration won't get marked as completed until all its scheduled
    // tasks have returned, or been cancelled. Therefore, it is important
    // to cancel timers when they're no longer needed
    timeoutTask.cancel();
}
Extends

Proprietà

cancel

Indica che il timer deve essere annullato. Questa richiesta verrà eseguita nella successiva istruzione yield o return.

isCanceled

Proprietà ereditate

isCompleted

Indica se l'attività è stata completata. Si noti che il completamento non equivale all'esito positivo.

isFaulted

Indica se l'attività ha generato un errore in qualche modo a causa di un errore.

result

Risultato dell'attività, se completato. In caso contrario, undefined.

Dettagli proprietà

cancel

Indica che il timer deve essere annullato. Questa richiesta verrà eseguita nella successiva istruzione yield o return.

cancel: () => void

Valore della proprietà

() => void

isCanceled

isCanceled: boolean

Valore della proprietà

boolean

Indica se il timer è stato annullato o meno.

Dettagli proprietà ereditate

isCompleted

Indica se l'attività è stata completata. Si noti che il completamento non equivale all'esito positivo.

isCompleted: boolean

Valore della proprietà

boolean

Ereditato daTask.isCompleted

isFaulted

Indica se l'attività ha generato un errore in qualche modo a causa di un errore.

isFaulted: boolean

Valore della proprietà

boolean

ereditato daTask.isFaulted

result

Risultato dell'attività, se completato. In caso contrario, undefined.

result?: unknown

Valore della proprietà

unknown

ereditato daTask.result