C# akka.net仅重新启动池中的单个路由

C# akka.net仅重新启动池中的单个路由,c#,akka,akka.net,C#,Akka,Akka.net,我有一个RoundRobinPool,我希望使用OneForOneStategy,这样当一个孩子抛出时,只有那个孩子会重新启动。我正在创建如下路由器: var strat = new OneForOneStrategy(1, TimeSpan.FromSeconds(5), e => Directive.Restart); var props = Props.Create<ThrowAlwaysActor>() .WithRou

我有一个RoundRobinPool,我希望使用OneForOneStategy,这样当一个孩子抛出时,只有那个孩子会重新启动。我正在创建如下路由器:

var strat = new OneForOneStrategy(1, TimeSpan.FromSeconds(5), e => Directive.Restart);

var props = Props.Create<ThrowAlwaysActor>()
                        .WithRouter(new RoundRobinPool(2))
                        .WithSupervisorStrategy(strat);

var router = system.ActorOf(props, "myrouter");
router.Tell("1");
var strat=newoneforonestrategy(1,TimeSpan.FromSeconds(5),e=>Directive.Restart);
var props=props.Create()
.带路由器(新RoundRobinPool(2))
.与监管策略(strat);
var router=system.ActorOf(props,“myrouter”);
转发器。告知(“1”);
输出:

akka://loadSystem/user/myrouter/$b PRERESTART <-- pool init
akka://loadSystem/user/myrouter/$a PRERESTART <-- pool init
akka://loadSystem/user/myrouter/$a OnReceive()
[ERROR][8/21/2016 8:21:02 AM][Thread 0004][akka://loadSystem/user/myrouter] The method or operation is not implemented.
akka://loadSystem/user/myrouter/$a PRERESTART <-- the actor that threw is being restarted
akka://loadSystem/user/myrouter/$b PRERESTART <-- this actor should not be restarted

akka://loadSystem/user/myrouter/$b PRERESTART必须将策略传递给池的构造函数,而不是fluent Props builder:

var routerStrat = new OneForOneStrategy(-1, TimeSpan.FromSeconds(5), e => Directive.Restart);

var props = Props.Create<ThrowAlwaysActor>()
                        .WithRouter(new RoundRobinPool(2, resizer, routerStrat, null));
var-routerStrat=new-OneForOneStrategy(-1,TimeSpan.FromSeconds(5),e=>Directive.Restart);
var props=props.Create()
.使用路由器(新的RoundRobinPool(2,resizer,routerStrat,null));