当前位置: 首页 > news >正文

企业网站建设源码HTML深圳网站建设软件开发公司哪家好

企业网站建设源码HTML,深圳网站建设软件开发公司哪家好,交通局网站建设方案,wordpress 评论点击验证Scala中的Actor模型 概念 Actor Model是用来编写并行计算或分布式系统的高层次抽象#xff08;类似java中的Thread#xff09;让程序员不必为多线程模式下共享锁而烦恼。Actors将状态和行为封装在一个轻量的进程/线程中#xff0c;但是不和其他Actors分享状态#xff0c;…Scala中的Actor模型 概念 Actor Model是用来编写并行计算或分布式系统的高层次抽象类似java中的Thread让程序员不必为多线程模式下共享锁而烦恼。Actors将状态和行为封装在一个轻量的进程/线程中但是不和其他Actors分享状态每个Actors有自己的世界观当需要和其他Actors交互时通过发送事件和消息发送是异步的非堵塞的(fire-andforget)发送消息后不必等另外Actors回复也不必暂停每个Actors有自己的消息队列进来的消息按先来后到排列这就有很好的并发策略和可伸缩性可以建立性能很好的事件驱动系统。 2.12版本后actor彻底从scala中抽离了出来所以我们在使用前需要引入相应的lib。 dependencygroupIdcom.typesafe.akka/groupIdartifactIdakka-actor_2.12/artifactIdversion2.5.9/version /dependencyActor的特征 ActorModel是消息传递模型,基本特征就是消息传递消息发送是异步的非阻塞的消息一旦发送成功不能修改Actor之间传递时接收消息的actor自己决定去检查消息actor不是一直等待是异步非阻塞的 具体写法 Actor发送接收消息 import akka.actor.Actor import akka.actor.ActorSystem import akka.actor.Propsclass HelloActor extends Actor {override def receive: Receive {case hey println(hey yourself)case _ println(hehe)} }object Main extends App {val system ActorSystem(HelloSystem)val helloActor system.actorOf(Props[HelloActor], name helloActor)helloActor ! heyhelloActor ! good morning }Actor与Actor之间通信 import akka.actor.{Actor, ActorRef, ActorSystem, Props}class MyActor extends Actor {override def receive: Receive {case msg: String {println(msg)Thread.sleep(1000)sender() ! 你说啥}case Int println(你竟然说数字)case _ println(default)} } class MyActor2 extends Actor {private val other: ActorRef context.actorOf(Props(new MyActor), actor1child)override def receive: Receive {case msg: String {println(msg)other ! nihao}} } object Test extends App {private val system: ActorSystem ActorSystem(system)private val actor: ActorRef system.actorOf(Props(new MyActor2), actor1)actor ! 你好actor2 }综述 Scala 中的 Actor 模型是一种并发编程模型用于处理并发和并行计算。Actor 模型的核心概念是基于消息传递和非共享状态并通过轻量级的执行单元称为 Actor来实现并发和协作。 在 Scala 中可以使用 Akka 框架来实现 Actor 模型。Akka 是一个构建可扩展、高性能和弹性系统的工具包它提供了强大的 Actor 模型库。 下面是一些关于 Scala 中 Actor 模型的基本概念和用法 Actor 的创建和消息传递 import akka.actor.{Actor, ActorSystem, Props}class MyActor extends Actor {def receive: Receive {case message: String println(sReceived message: $message)} }val system ActorSystem(MySystem) val myActor system.actorOf(Props[MyActor], myActor)myActor ! Hello在上述示例中我们定义了一个 MyActor 类它继承自 Actor 并重写了 receive 方法来处理消息。通过 ActorSystem 和 Props我们创建了一个名为 “MySystem” 的 Actor 系统并创建了一个名为 “myActor” 的 Actor 实例。然后我们通过 ! 运算符向 myActor 发送了一条消息 “Hello”。 Actor 之间的相互协作 class GreetingActor extends Actor {def receive: Receive {case message: String val senderActor sender()println(sGreetingActor received message: $message)senderActor ! Nice to meet you} }val greetingActor system.actorOf(Props[GreetingActor], greetingActor) val response myActor.ask(How are you?)(timeout Timeout(5.seconds)).mapTo[String]response.onComplete {case Success(message) println(sResponse: $message)case Failure(ex) println(sFailed: ${ex.getMessage}) }在上述示例中我们创建了一个 GreetingActor 类它也是一个 Actor。在 receive 方法中它接受到消息后会打印出接收到的消息并通过 sender() 方法获取发送消息的 Actor并向其发送一条回复消息。 在主程序中我们使用 ask 方法向 myActor 发送一个问候消息并等待回复。通过 mapTo 方法将回复消息转换为字符串类型并使用 onComplete 处理回复结果。 总之Scala 中的 Actor 模型提供了一种高效且易于编写并发代码的方式。Akka 框架为 Scala 提供了完善的 Actor 模型实现使我们能够轻松构建并发和并行计算应用程序。
http://www.hkea.cn/news/14335903/

相关文章:

  • wordpress网站反应慢网站架构设计师是做什么的
  • 阿里巴巴怎么做不花钱的网站免费seo软件推荐
  • 柳城网站做任务 网站
  • 怎么帮助网站推广深圳网站设计g
  • 网站建设 工作建议网站建设基本步骤包括哪些
  • 做竞价的网站需要做外部链接吗做网站知识
  • 网站优化主旨广州seo诊断
  • 如何利用社交网站做招聘手机网站案列
  • 个人备案的网站可以做淘宝客吗市场监督管理局官网查询
  • 苏州科建设交通学院网站微博+wordpress
  • 中国老区建设促进会网站网站开发的大致流程
  • 网站设计公司深圳哪些网站是由wordpress做的
  • 网站目录文件夹怎样建设那种游戏网站
  • 有趣的个人网站扬州网站商城建设价格
  • wordpress的官方网站开源手机网站
  • 做网站用什么代码在微信上做网站
  • 网站建设购买什么境外主机做网站赔了8万
  • 电脑上怎么做网站用lnmp做网站
  • 响应式网站设计教程开三云匠网
  • 做自己的直播网站网站建设著作权
  • 东莞市建设工程质监督站网站四川住建厅官方网站的网址
  • 地下彩票网站建设怎样做网络推广链接
  • 中文网站建设技术解决方案佛山快速排名seo
  • 网站建设语asp外贸网站建设招聘
  • 上海建设局官方网站长春网站建设58同城
  • 上海做兼职的网站黄骅港吧
  • 网站建设中gif有没有免费的网站推销产品
  • 范县网站建设费用织梦5.7cms照明灯具能源电子产品企业网站源码企业模板带后台
  • 深圳做网站的公司哪个好外贸都是在哪些网站做
  • 怎么看网站有没有被收录国内永久免费crm系统网站推荐