public void AsyncStopActor() { var actf = new ActorSystem(); var act1 = actf.CreateActor<AsyncTestActor>("parent"); var act2 = act1.Ask<ActorRef>(new createchildactormsg()).Result; Assert.IsNotNull(actf.FindActorByPath("\\user\\parent\\child")); bool f = false; act1.Tell(new stopchildex() { child = act2, childstopped = () => { f = true; } }); while (!f) { Thread.SpinWait(0); } Assert.IsNull(actf.FindActorByPath("\\user\\parent\\child")); }
public void FindActorByPath() { var actf = new ActorSystem(); var act = actf.CreateActor<IerarhyTestActor>("myactor"); var act2 = act.Ask<ActorRef>(new createchildactormsg()).Result; var fact = actf.FindActorByPath("\\user\\myactor\\child"); Assert.NotNull(fact); Assert.AreEqual(act2, fact); }
public void SystemStopTest() { var actf = new ActorSystem(); var act1 = actf.CreateActor<ChildStopRestartActor>("parent"); var act2 = act1.Ask<ActorRef>(new createchildactormsg()).Result; var act3 = actf.FindActorByPath("\\user\\parent\\child"); Assert.AreEqual(act3, act2); actf.StopSystem(); act3 = actf.FindActorByPath("\\user\\parent\\child"); Assert.IsNull(act3); }