Domanda

Esiste un modo consigliabile per interrompere una promessa di Play Framework?Ad esempio,

import play.api.libs.concurrent.Promise

val timeoutFuture = Promise.timeout({
    Logger.info("timeout expired.")
}, myTimeoutValue)

Quale sarebbe un buon modo per cancellare prima questo futuro myTimeoutValue scade?

È stato utile?

Soluzione 2

Alla fine ho paura che la risposta fosse no - non c'era modo di annullare tale promessa prima che il timeout scada.

Altri suggerimenti

Se il periodo di timeout è troppo lungo, riduci semplicemente il file myTimeoutValue.Se desideri interrompere l'esecuzione c'è un modo mostrato qui completando un futuro.

Questo è tuttavia un modo discutibile di fare le cose poiché puoi semplicemente ignorare il risultato della tua Promessa/Futuro se impiega troppo tempo, ma poiché dovrai impostare un periodo per quando è troppo lungo, allora è meglio metterlo come il valore di timeout.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top