Exemple #1
0
        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"));
        }
Exemple #2
0
        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);
        }
Exemple #3
0
        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);
        }