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
Nonese non si è verificato alcun problema. - done()
- Restituisce
Truese il risultato (o l'eccezione) è arrivato, altrimenti restituisceFalse. Questa funzione non attende. - get_exception()
- Attende se necessario, quindi restituisce l'eccezione (o
Nonese 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
Nonese non è presente alcun oggetto traceback). Il modulotracebackdi 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
Futuresnell'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
Futurecompletato. RestituisceNonese l'iterablefuturesè vuoto.