scala的创建Actor

创建Actor
创建Actor的方式和Java中创建线程很类似,也是通过继承来创建。
使用方式
定义class或object继承Actor特质
重写act方法
调用Actor的start方法执行Actor
在这里插入图片描述
示例
示例说明
创建两个Actor,一个Actor打印1-10,另一个Actor打印11-20
使用class继承Actor创建(如果需要在程序中创建多个相同的Actor)
使用object继承Actor创建(如果在程序中只创建一个Actor)
参考代码
使用class继承Actor创建

object _05ActorDemo {
  class Actor1 extends Actor {
    override def act(): Unit = (1 to 10).foreach(println(_))
  }

  class Actor2 extends Actor {
    override def act(): Unit = (11 to 20).foreach(println(_))
  }

  def main(args: Array[String]): Unit = {
    new Actor1().start()
    new Actor2().start()
  }
}

使用object继承Actor创建

  object Actor1 extends Actor {
    override def act(): Unit =
      for(i <- 1 to 10) {
        println(i)
      }
  }

  object Actor2 extends Actor {
    override def act(): Unit =
      for(i <- 11 to 20) {
        println(i)
      }
  }

  def main(args: Array[String]): Unit = {
    Actor1.start()
    Actor2.start()
  }

Actor程序运行流程
调用start()方法启动Actor
自动执行act()方法
向Actor发送消息
act方法执行完成后,程序会调用exit()方法

在这里插入图片描述
结果:
在这里插入图片描述

发布了158 篇原创文章 · 获赞 339 · 访问量 23万+

猜你喜欢

转载自blog.csdn.net/qq_45765882/article/details/104336192