信頼できるステートフルなサービス アクターを作成しています。
質問:
アクター プロキシの作成中に初期化データを渡す方法はありますか ( ActorProxy.Create()
)? 基本的に、私のアクターのコンストラクターに相当します。
現在の考え:
これは、状態の初期化を担当するアクター メソッド呼び出しでプロキシ作成呼び出しをフォローアップすることで実現できます。
例えば
//Danger, the following calls are not atomic
ITokenManager tokenActor = ActorProxy.Create<IMyActor>(actorId, "AppName");
//Something could happen here and leave my actor in an unknown state
await tokenActor.InitializeAsync(desiredInitialState);
そのようなアプローチに対する私の懸念:
- この操作はアトミックではありません。アクターが一貫性のない状態になる可能性があります
- この初期化メソッドは、望ましくないアクターの存続期間を通じて利用できるようになりました。