在scala中调用akka actor的方法

2023-12-28

我有一个演员定义如下:

class nodeActor(ID: String) extends Actor

其中包含一个方法,用于在启动之前设置 actor:

def addRef(actor:ActorRef)

我这样实例化这个演员:

val node1 = system.actorOf(Props(new nodeActor("node1")), name="node1")

它返回给我一个 ActorRef。编译器不允许我在 ActorRef 上调用“addRef”,因为它是子类型的成员。所以我使用以下方法投射节点:

node1.asInstanceOf[nodeActor].addRef(link1)

这让编译器很高兴。然后在运行时我得到

java.lang.ClassCastException: akka.actor.LocalActorRef cannot be cast to ActorStressTest.nodeActor

这对我来说似乎没有意义,因为它是一个子类型,我应该能够转换为它。

Ideas?


如果你想这样做进行测试,那么在创建 actor 时你可以这样做:

import akka.testkit.TestActorRef
val actorRef = TestActorRef[MyActor]
val actor = actorRef.underlyingActor

然后你可以在 actor 上运行方法

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在scala中调用akka actor的方法 的相关文章

随机推荐

  • 有向加权图的邻接矩阵与邻接表

    作为一项练习 我必须建立一个卫星导航系统 该系统规划从一个地点到另一个地点的最短和最快的路线 它必须在不使用太多内存的情况下尽可能快地完成 我无法决定使用哪种结构来表示该图 我知道矩阵更适合密集图 而列表更适合稀疏图 我更倾向于使用列表 因
  • 水平菜单在宽屏显示器上显示不正确

    我为网站实现的水平菜单有一个小问题 该菜单仅包含三个项目 但在相当大的宽屏显示器上查看时 最后一个项目似乎折叠到一个新行 我实际上无法自己测试这一点 因为我的客户使用宽屏显示器 虽然我无法重现他们向我发送的此屏幕截图的错误 客户端在 Win
  • 如何在Python中将日期时间对象移动12小时

    由于某种原因 日期时间对象让我很头疼 我写信是为了弄清楚如何将日期时间对象移动 12 小时 我还需要知道如何确定两个日期时间对象是否相差 1 分钟或更长时间 The datetime http docs python org library
  • 将 Chrome 设置为 RSpec/Capybara 的默认浏览器

    我在让 Chrome 在 Ubuntu 13 10 64 位上与 RSpec Capybara 配合使用时遇到一些问题 默认情况下它启动 Firefox 我们尝试通过多种方式改变这一点 包括 http actsasblog ca 2011
  • 曾几何时,> 比 < 更快……等等,什么?

    我在读很棒的 OpenGL 教程 https paroj github io gltut Positioning Tut05 20Overlap 20and 20Depth 20Buffering html 这真的很棒 相信我 我当前的主题
  • Android 中通过 SIP 进行视频通话

    我是 Android 初学者 正在开发一个可以使用 SIP 通过 IP 进行视频通话的应用程序 我在 Google 和 StackOverflow 上搜索了很多 得到的只是我需要一些 Native Library 而我对它没有太多了解 我关
  • 如何在 C# 中仅反序列化 XML 文档的一部分

    这是我试图解决的问题的一个虚构示例 如果我使用 C 工作 并且有这样的 XML
  • .NET:检查 URL 的响应状态代码?

    在 NET 中检查 Web 服务器回复 GET 请求的状态代码的最简单方法是什么 请注意 我不需要响应的正文 事实上 如果可能的话 只应该请求标头 然而 话虽如此 如果请求省略响应正文会显着增加代码的复杂性 那么接收正文就可以了 另外 我对
  • 多核机器上单精度数组与双精度数组的矩阵乘法的性能下降

    UPDATE 不幸的是 由于我的疏忽 我有一个旧版本的 MKL 11 1 与 numpy 链接 新版本的 MKL 11 3 1 在 C 中和从 python 调用时提供相同的性能 令人困惑的是 即使将编译后的共享库与较新的 MKL 显式链接
  • 缩短 Javascript if-else 结构

    我的代码是 var level function d if value d gt median stdev return 1 else if value d gt median return 2 else if value d gt med
  • 在 django 中将 2 小时和 1 天添加到时间戳上

    我有一个保存游戏数据的模型 我如何在 开始 字段中添加 2 小时和 1 天 class Game models Model starts models DateTimeField auto now add True ends models
  • 如何使用 UICollectionView 复制 iOS Chrome 选项卡效果 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在创建一个应用程序 其中视图之一
  • Scala 中存在“无法解析符号”错误的通用方法

    我需要获得一个通用的检查方法 可以按如下方式使用 check Int 10 1 5 and check Double 10 0 1 0 5 0 我尝试了这段代码 trait RangeChecker def check T lt AnyVa
  • 如何翻译外部 javascript 文件中的文本? (姜戈)

    我有一个 JavaScript 文件 它根据用户交互将元素附加到正文 现在 在我的 index html 模板中 我使用翻译后的文本声明全局变量 block main endblock 因此 在 Django 翻译索引模板中的文本后 我的
  • #include C/C++ 中的头文件

    在阅读了几个有关编译 特别是 C 问题的问题并注意到在许多情况下问题是缺少标头 include 后 我不禁对自己的无知感到疑惑 并问自己 现在也问你 为什么缺少的标头不会自动检查并添加或请求给程序员 例如 此类功能可用于 Netbeans
  • 如何将文字放在图像的中间

    你好 使用 CSS 我试图将一些文本放在图像的中心 所以它看起来像这样 div P I This is some text C div 我怎样才能达到这个结果 不知道这是否有帮助 图像是 32x32 像素 img vertical alig
  • Doctrine2 中 JOIN ON 和 JOIN WITH 有什么区别?

    Doctrine2 中 JOIN ON 和 JOIN WITH 有什么区别 我在手册中找不到任何相关信息 ON替换原来的连接条件 WITH为其添加一个条件 Example Album OneToMany gt Track Case One
  • 子图日期时间 X 轴刻度未按预期工作

    我正在尝试绘制许多图 以下是数据组织方式的示例 我的目的是使用谷歌分析数据构建一系列几小时或几天 比如一周 7 天 或一天 24 小时 的子图 我的索引是日期时间对象 这是当轴正确完成时单个图的外观示例 from datetime impo
  • 了解 Traceview

    我想了解跟踪视图是如何工作的 我尝试使用traceview 分析一种方法 但有一个疑问 我已附上 trace 的快照 它表示大部分时间由蓝色标记的 顶级 占用 但没有更多信息 这个方法何时执行或者执行什么功能 谁能向我解释一下为什么它花费这
  • 在scala中调用akka actor的方法

    我有一个演员定义如下 class nodeActor ID String extends Actor 其中包含一个方法 用于在启动之前设置 actor def addRef actor ActorRef 我这样实例化这个演员 val nod