Scala Actor并发编程 实战(一)
- 定义一个 class 或者是 object 继承 Actor 特质,注意导包 import scala.actors.Actor
- 重写对应的 act 方法
- 调用 Actor 的 start 方法执行 Actor
- 当 act 方法执行完成,整个程序运行结束
package cn.cheng.actor
import scala.actors.Actor
object Actor1 s extends Actor{
//重写 act 方法
def act(){
for(i <- 1 to 10){
println (1 "actor-1 " " + i)
Thread. sleep (2000)
}
}
}
object Actor2 extends Actor{
//重写 act 方法
def act(){
for(i <- 1 to 10){
println (2 "actor-2 " " + i)
Thread. sleep (2000)
}
}
}
object ActorTest extends App{
//启动 Actor
Actor1.start()
Actor2.start()
}
说明:上面分别调用了两个单例对象的 start()方法,他们的 act()方法会被执行,相同与在 java中开启了两个线程,线程的 run()方法会被执行
注意:这两个 Actor 是并行执行的,act()方法中的 for 循环执行完成后 actor 程序就退出了。
喜欢就点赞评论+关注吧
感谢阅读,希望能帮助到大家,谢谢大家的支持!