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


C# Listener.Listen方法代码示例

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


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

示例1: Listen_AnonymousData_Ok

        public async Task Listen_AnonymousData_Ok(
            [Frozen]HttpRequestMessage request,
            Func<HttpRequestMessage> requestProvider,
            [Frozen]Mock<IStreamingUtils> streamingUtils, 
            [Frozen]Mock<IHttpUtils> httpUtils,
            Listener sut)
        {
            //Arrange
            var twits = new[] {"Твиттер это ниочень", "Вот мой мир -- другое дело", "круче только одноклассники"};
            var concatenatedTwits = string.Join('\n'.ToString(), twits);
            var stream = new MemoryStream(Encoding.UTF8.GetBytes(concatenatedTwits));
            var reader = new StreamReader(stream, Encoding.GetEncoding("utf-8"));

            httpUtils.Setup(a => a.UnescapeUnicode(It.IsAny<string>())).Returns((string r) => r);
            streamingUtils.Setup(a => a.GetReader(It.IsAny<HttpRequestMessage>())).ReturnsAsync(reader);
            var results = new List<string>();
            Action<string> processRequest = a => results.Add(a);

            //Act
            await sut.Listen(requestProvider, processRequest);

            //Assert
            streamingUtils.Verify(a => a.GetReader(request), Times.Once);
            results.ShouldAllBeEquivalentTo(twits);
        }
开发者ID:MiningCat,项目名称:AwesomeTwitterClient,代码行数:25,代码来源:StreamListnerTests.cs

示例2: Listener_ListenTwice_ThrowsSocketException

 public void Listener_ListenTwice_ThrowsSocketException()
 {
     Listener listener = new Listener();
     listener.Listen(0);
     try
     {
         try
         {
             new Listener().Listen(0);
             Assert.Fail("No Exception thrown");
         }
         catch (Exception ex)
         {
             Assert.IsTrue(ex is SocketException);
         }                
     }
     finally
     {
         listener.Stop();
     }
 }
开发者ID:Airdigit,项目名称:MultiMiner,代码行数:21,代码来源:ListenerTests.cs

示例3: listen

        void listen()
        {
            if (listeners == null)
            {
                listeners = new List<Listener>();
                Clients = new List<Client>();
                foreach (int port in Settings.Ports)
                {
                    Listener l = new Listener();
                    if (l.Listen(port))
                    {
                        l.SocketAccepted += listener_SocketAccepted;
                        EventLogger.LogEvent("Listening", "Successfully listening on port " + port.ToString());
                    }
                    else
                        EventLogger.LogEvent("Listening Failed", "Unable to listen on port " + port.ToString());
                    if (l.Running)
                        listeners.Add(l);
                }

                EventLogger.LogEvent("Started", "Net-Weave R has been started");

                startToolStripMenuItem.Text = startToolStripMenuItem.Text.Replace("Listen", "Stop");
                Pinger.Start(ref Clients);
            }
            else
            {
                Pinger.Stop();
                StatusDialog d = new StatusDialog();
                d.SetStatus("Stopping Listeners...");
                new Thread(delegate()
                    {
                        foreach (Listener l in listeners)
                        {
                            if (l.Running)
                            {
                                l.SocketAccepted -= listener_SocketAccepted;
                                l.Stop();
                                EventLogger.LogEvent("Listening Stopped", "The listener for port " + l.Port + " has been stopped");
                            }
                        }
                        Restart();
                        d.SetStatus("Disconnecting Clients...");
                        if (Clients.Count > 0)
                        {
                            for (int i = 0; i < Clients.Count; i++)
                            {
                                Clients[i].DataReceived -= client_DataReceived;
                                Clients[i].DataSent -= client_DataSent;
                                Clients[i].Disconnected -= client_Disconnected;
                                Clients[i].Close();
                            }
                        }
                        listeners.Clear();
                        listeners = null;
                        Clients.Clear();
                        Clients = null;
                        Invoke((MethodInvoker)delegate
                        {
                            EventLogger.LogEvent("Stopped", "Net-Weave R has been stopped");
                            startToolStripMenuItem.Text = startToolStripMenuItem.Text.Replace("Stop", "Listen");

                            lstClients.Items.Clear();
                            d.Close();
                        });
                    }).Start();
                d.ShowDialog();
            }
        }
开发者ID:0x31337,项目名称:footlocker,代码行数:69,代码来源:Main.cs

示例4: RestartListeners

        public void RestartListeners()
        {
            if (listeners == null)
                return;
            StatusDialog d = new StatusDialog();
            new Thread(delegate()
                {
                    d.SetStatus("Restarting listeners...");
                    EventLogger.LogEvent("Restarting", "Listeners are restarting");
                    foreach (Listener l in listeners)
                    {
                        l.Stop();
                    }

                    listeners.Clear();

                    for (int i = 0; i < Settings.Ports.Count; i++)
                    {
                        Listener l = new Listener();
                        int port = Settings.Ports[i];
                        if (l.Listen(port))
                        {
                            l.SocketAccepted += listener_SocketAccepted;
                            EventLogger.LogEvent("Listening", "Successfully listening on port " + port.ToString());
                        }
                        else
                            EventLogger.LogEvent("Listening Failed", "Unable to listen on port " + port.ToString());
                        if (l.Running)
                            listeners.Add(l);
                    }
                    Invoke((MethodInvoker)delegate
                    {
                        d.Close();
                    });
                }).Start();
            d.ShowDialog();
        }
开发者ID:0x31337,项目名称:footlocker,代码行数:37,代码来源:Main.cs


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