Classe futura NDB

Un Future rappresenta il risultato di un'operazione asincrona. Quando viene creato, probabilmente non contiene dati dei risultati. Al termine dell'operazione, Future riceve il risultato. Un'applicazione può chiamare il metodo get_result() di un oggetto Future; se il risultato è arrivato, il metodo lo restituisce; altrimenti, attende che arrivi e poi lo restituisce.

Nota:non esiste una mappatura 1:1 tra RPC e Futures. Più future potrebbero essere collegati a un risultato di una singola RPC.

Metodi dell'istanza

check_success()
Controlla se l'operazione è riuscita. Attende se necessario. Genera un'eccezione se si è verificato un problema; restituisce None se non si è verificato alcun problema.
done()
Restituisce True se il risultato (o l'eccezione) è arrivato; altrimenti, restituisce False. Questa funzione non attende.
get_exception()
Attende se necessario, quindi restituisce l'eccezione (o None se non è stata rilevata alcuna eccezione). Returns l'eccezione, non la genera.
get_result()
Attende se necessario, quindi restituisce il risultato o genera l'eccezione.
get_traceback()
Attende se necessario, quindi restituisce l'oggetto traceback dell'eccezione (o None se non è presente alcun oggetto traceback). Il modulo traceback di Python ha funzioni per stampare e utilizzare gli oggetti traceback.
wait()
Attende l'arrivo di un risultato o di un'eccezione. Restituisce sempre None.

Metodi della classe

wait_all(futures)
Attendi il completamento di tutte le Futures nell'iterabile passata.

Argomenti

futures
Iterable di Future oggetti.

Restituisce None.

wait_any(futures)
Attendi il completamento di almeno uno degli elementi di un iterabile di Futures.

Argomenti

futures
Iterable di Future oggetti.

Restituisce un Future completato. (Restituisce None se l'iterabile futures è vuoto.)