Classe futura NDB

Un Future rappresenta il risultato di un'operazione asincrona. Al momento della creazione, probabilmente non contiene dati sui 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. In caso contrario, attende che il risultato venga visualizzato e poi lo restituisce.

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

Metodi 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 generata alcuna eccezione). Restituisce l'eccezione, non la solleva.
get_result()
Attende, se necessario, quindi restituisce il risultato o solleva 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 contiene funzioni per stampare e utilizzare gli oggetti traceback.
wait()
Attende l'arrivo di un risultato o di un'eccezione. Restituisce sempre None.

Metodi di classe

wait_all(futures)
Attendi il completamento di tutti i Futures nell'iterable passato.

Argomenti

futures
Iterable di oggetti Future.

Restituisce None.

wait_any(futures)
Attendi il completamento di almeno uno di un iterable di Futures.

Argomenti

futures
Iterable di oggetti Future.

Restituisce un Future completato. Restituisce None se l'iterable futures è vuoto.