Scala Actors中的“ eventloop”函数有什么作用?
|
eventloop
函数在Scala Actors中起什么作用,它有什么用?
没有找到相关结果
已邀请:
2 个回复
磁辫覆氓
的工作方式与
和
的组合相似。
和
之间的区别在于,
实际上不会递归调用主体(以防止基于线程的actor发生堆栈溢出),而是安排处理(反应/接收)邮箱中的下一条消息,并且完成抛出异常的当前处理程序的执行,以清除调用堆栈。
使用
递归处理消息-在
的情况下,它是安全的(并且堆栈不会溢出),因为ѭ3body的主体(但不是
!)总是以异常结尾,在大多数情况下,并计划下一个循环,以确保所有参与者都能公平地访问线程池。因此,
仅可用于事件驱动的actor。
踩什不
此模式在ѭ15中作为抽象操作提供:
请注意,不再需要对某些封闭函数进行尾部调用。 话虽如此,考虑到线程的日期是2008年,并且Scala Actor API指南没有一次提到“ 0”,也许这不是经常使用。 Vasil Remeniuk在回答(+1)中熟练地详细说明了“ 0”的用法,并在问题“带有Scala actors的客户端-服务器示例”中给出了具体示例。