Supponiamo di dover eseguire alcune attività simultanee.Quando potrebbero i Futures essere più appropriati degli attori (o viceversa) in Scala?
Posso avvolgere ogni attività in un Future
e attendere il loro completamento. In alternativa, posso creare uno Actor
per ogni attività. Ogni Actor
eseguirà il proprio compito (ad es. Dopo aver ricevuto un messaggio "start") e restituirà il risultato.
Mi chiedo quando devo usare il primo (con Future
s) e la seconda (con Actor
s) avvicinamento e perché l'approccio Future
è considerato migliore per il caso descritto sopra.
Quindi, l'unica differenza è solo una sintassi. È corretto? – Michael
La differenza è anche nell'implementazione sottostante, ma il modello di attore è in generale un modello di programmazione più potente ed espressivo: probabilmente potresti creare un'API simile all'API di Futures utilizzando gli attori. Implementare attori usando i futures sarebbe più complicato. – axel22
Ok, vedo la differenza tra i modelli. Potresti spiegare anche la differenza in bianco e nero delle implementazioni? – Michael