函数“eventloop”在Scala Actors中的作用是什么?
发布时间:2020-12-16 19:17:55 所属栏目:安全 来源:网络整理
导读:函数eventloop在 Scala Actors中做了什么以及它有用的是什么? 解决方法 eventloop的工作方式类似于循环和反应组合. loop和eventloop之间的区别在于,循环实际上不会递归地调用正文(以防止基于线程的actor的堆栈溢出),而是调度处理(响应/接收)来自邮箱的下一
函数eventloop在
Scala
Actors中做了什么以及它有用的是什么?
解决方法
eventloop的工作方式类似于循环和反应组合. loop和eventloop之间的区别在于,循环实际上不会递归地调用正文(以防止基于线程的actor的堆栈溢出),而是调度处理(响应/接收)来自邮箱的下一条消息,并完成执行当前处理程序抛出异常,以清除调用堆栈.
eventloop使用react递归处理消息 – 如果反应它是安全的(并且堆栈不会溢出),因为反应体(但不是接收!)总是以异常结束,在大多数情况下,和下一个循环预定,以保证所有参与者公平访问线程池.因此,eventloop只能用于事件驱动的actor. import scala.actors._ import Actor._ class EventLoop extends Actor { def act = eventloop{ case msg => println("Received " + msg) } } (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |