当前位置: 首页>>代码示例>>C#>>正文


C# Module.Find方法代码示例

本文整理汇总了C#中Module.Find方法的典型用法代码示例。如果您正苦于以下问题:C# Module.Find方法的具体用法?C# Module.Find怎么用?C# Module.Find使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Module的用法示例。


在下文中一共展示了Module.Find方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: TwoNodesTest

        public void TwoNodesTest()
        {
            var module1 = new Module(Guid.NewGuid());
            module1.Configure();
            module1.Start();

            var module2 = new Module(Guid.NewGuid(), 11112);
            module2.Configure();
            module2.Start();

            Assert.IsTrue(module1.IsRunning);
            Assert.IsTrue(module2.IsRunning);


            var client1 = module1.Find<ClientInterface>();
            var client2 = module2.Find<ClientInterface>();

            client2.Connect("localhost", 11111);


            var msgEvent = new AutoResetEvent(false);
            client1.MessageReceived += (sender, args) =>
                {
                    Logger.Info("Client1 message received.");
                    msgEvent.Set();
                };

            client2.MessageReceived += (sender, args) =>
                {
                    Logger.Info("Client2 message received.");
                    Assert.IsNotNull(args.Data.Path);
                    Assert.IsTrue(args.Data.Path.Count == 2);
                    Assert.IsTrue(args.Data.Path[0] == module1.Id);
                    Assert.IsTrue(args.Data.Path[1] == module2.Id);

                    client2.Send(new Entities.Message()
                        {
                            From = module2.GetMyNode(),
                            To = args.Data.From.Id,
                            Data = new byte[1024]
                        });
                };

            client1.Send(new Entities.Message()
                {
                    From = module1.GetMyNode(),
                    To = module2.Id,
                    Data = new byte[1024],
                });

            Assert.IsTrue(msgEvent.WaitOne(TimeSpan.FromSeconds(2)));


            client1.Send(new Entities.Message()
            {
                From = module1.GetMyNode(),
                To = module2.Id,
                Data = new byte[1024],
            });

            Assert.IsTrue(msgEvent.WaitOne(TimeSpan.FromSeconds(2)));


            module1.Stop();
            module2.Stop();
        }
开发者ID:robkaandorp,项目名称:DI.P2P,代码行数:66,代码来源:SendReceiveTests.cs


注:本文中的Module.Find方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。