Scala でのアクター モデルの実装で、bang(!) 演算子をオーバーライドできますか? この演算子をオーバーロードして、メッセージ パッシングの操作を変更する必要がありますか?
アクターが他のアクターにメッセージを送信したときに送信されたメッセージのログを含める必要があります。私は
override def !(msg:Any):Unit =
{
//logic for writing to logs..
super.!(msg)
}
これはうまくいきます。しかし、送信するメッセージに応じて、! の動作を区別したいと考えています。
actor_name!(arg1,arg2,arg3)
actor_name1!(arg4, arg5)
上記の場合、最初に ! 操作、ログを実行する必要があります。2番目に、画面に印刷したいだけです。オーバーライド コードでこれら 2 つのメッセージ送信表記を区別するにはどうすればよいですか?