在 Scala 中的 Actor 模型实现中,我们可以覆盖 bang(!) 运算符吗?我需要通过重载这个操作符来修改消息传递的操作吗?
我需要记录任何参与者向任何其他参与者发送消息时发送的消息。我从
override def !(msg:Any):Unit =
{
//logic for writing to logs..
super.!(msg)
}
这工作正常。但是,我想根据我发送的消息来区分 ! 的行为。
actor_name!(arg1,arg2,arg3)
actor_name1!(arg4, arg5)
在上述情况下,首先!操作,我需要执行日志记录。第二个!,我只想在屏幕上打印。我如何区分覆盖代码中的这两种消息发送符号?