Ce programme, après l'exécution de main(), ne se termine pas.Comment ajouter des acteurs scala à un programme existant sans interférer avec le comportement de terminaison normal?
object Main
{
def main(args: Array[String]) {
... // existing code
f()
... // existing code
}
def f() {
import scala.actors.Actor._
val a = actor {
loop {
react {
case msg: String => System.out.println(msg)
}
}
}
a ! "hello world"
}
}
En raison de cet effet secondaire inattendu, à l'aide des acteurs peut être considéré comme intrusif.
En supposant que les acteurs doivent continuer à fonctionner jusqu'à la fin du programme, comment feriez-vous pour préserver le comportement original dans tous les cas de résiliation?
Merci. Je vais essayer 2.8 bêta –