Пример #1
0
        public async Task <double> Sum(double x, double y)
        {
            AnswerMessage answer = null;

            //for (int i = 0; i < 10; i++)
            {
                answer = await CalculatorActor.Sum(new AddMessage(x, y));
            }
            return(answer.Value);
        }
Пример #2
0
        public async Task <double> Sum(double x, double y)
        {
            IActorRef calculatorRef;
            // version 1:
//            var calculatorActorProps = Props.Create<CalculatorActor>();
//            var calculatorRef = _actorSystem.ActorOf(calculatorActorProps);

            // version 2:
//            try
//            {
//                calculatorRef = await _actorSystem.ActorSelection("/user/calculator")
//                    .ResolveOne(TimeSpan.FromMilliseconds(100));
//            }
//            catch (ActorNotFoundException exc)
//            {
//                var calculatorActorProps = Props.Create<CalculatorActor>();
//                calculatorRef = _actorSystem.ActorOf(calculatorActorProps, "calculator");
//            }

            var msg = new AddMessage(x, y);
            // version 3:
//            var answer = await calculatorRef.Ask<AnswerMessage>(msg);
            var answer = await _calculatorActor.Sum(msg);

            return(answer.Value);
        }
        public async Task <double> Sum(double x, double y)
        {
            var answer = await CalculatorActor.Sum(new AddMessage(x, y));

            return(answer.Value);
        }