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


C# Listener.StartServer方法代码示例

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


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

示例1: ConnectTest

        public void ConnectTest()
        {
            var server = new Listener<object>();
            server.StartServer(4530);
            server.SocketConnect += OnSocketConnect;

            TcpClient client = new TcpClient();
            client.Connect("localhost", 4530);
            Assert.IsTrue(client.Connected);

            if (!UnitTestUtil.Wait(1000, () => isConnect))
                Assert.Fail("socket连接在超时后,未出发连接事件。t");

            server.Close();
        }
开发者ID:andyhebear,项目名称:HappyQ-WowServer,代码行数:15,代码来源:SocketTest.cs

示例2: SendRecvTest

        public void SendRecvTest()
        {
            isRecv = false;

            var server = new Listener<object>();
            server.StartServer(4531);
            server.SocketConnect += OnSocketRecvConnect;
            server.SocketRecv += server_SocketRecv;
            Socket client = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
            client.Connect("localhost", 4531);
            Assert.IsTrue(client.Connected);

            if (!UnitTestUtil.Wait(1000, () => isRecvConnect))
                Assert.Fail("socket连接在超时后,未出发连接事件。");

            var buffer = new byte[4];
            buffer[0] = 1;
            buffer[3] = 255;

            client.Send(buffer, buffer.Length, SocketFlags.None);

            if (!UnitTestUtil.Wait(1000, () => isRecv))
                Assert.Fail("socket连接成功后发数据,服务器没收到数据。");

            var outbuffer = new byte[10];
            var len = client.Receive(outbuffer);

            Assert.AreEqual(len, 4);
            Assert.AreEqual(outbuffer[0], 1);
            Assert.AreEqual(outbuffer[3], 255);
            Assert.AreEqual(outbuffer[4], 0);

            //  再发送测试一次
            isRecv = false;

            client.Send(buffer, 2, SocketFlags.None);

            if (!UnitTestUtil.Wait(1000, () => isRecv))
                Assert.Fail("socket连接成功后发数据,服务器没收到数据。");

            outbuffer = new byte[10];
            len = client.Receive(outbuffer);
            Assert.AreEqual(len, 2);

            Assert.AreEqual(outbuffer[0], 1);

            server.Close();
        }
开发者ID:andyhebear,项目名称:HappyQ-WowServer,代码行数:48,代码来源:SocketTest.cs

示例3: Main

        static void Main(string[] args)
        {
            Logs.AddConsoleAppender();

            var servers = new Listener<Session>();
            servers.SocketConnect += OnSocketConnect;
            servers.SocketDisconnect += OnSocketDisconnect;
            servers.SocketRecv += OnSocketRecv;
            servers.StartServer(10086);

            Logs.Info("服务器启动,等待客户端连接。按Esc键退出");
            while (true)
            {
                var key = Console.ReadKey();
                if (key.Key == ConsoleKey.Escape)
                    break;

                Thread.Sleep(100);
            }
        }
开发者ID:RainsSoft,项目名称:DogSE,代码行数:20,代码来源:Program.cs

示例4: CloseTest

        public void CloseTest()
        {
            isDisconnect = false;
            var server = new Listener<object>();
            server.StartServer(4532);
            server.SocketConnect += OnSocketConnect;
            server.SocketDisconnect += server_SocketDisconnect;
            TcpClient client = new TcpClient();
            client.Connect("localhost", 4532);
            Assert.IsTrue(client.Connected);

            if (!UnitTestUtil.Wait(1000, () => isConnect))
                Assert.Fail("socket连接在超时后,未出发连接事件。");

            client.Close();

            if (!UnitTestUtil.Wait(1000, () => isDisconnect))
                Assert.Fail("服务器没收到客户端断开连接事件。");

            server.Close();
        }
开发者ID:zaq1xsw,项目名称:DogSE,代码行数:21,代码来源:SocketTest.cs

示例5: StartServerSocket

        /// <summary>
        /// 开始服务器socket,可以开始接收客户端数据
        /// </summary>
        private void StartServerSocket()
        {
            var serverTcpConfig = ServerConfig.Tcp;
            if (serverTcpConfig == null || serverTcpConfig.Length == 0)
            {
                Logs.Error(@"请先配置..\Server.Config 文件下root\ServerConfig\Tcp 的服务器配置");
                return;
            }

            Listeners = new Listener<NetState>[serverTcpConfig.Length];
            var index = 0;
            foreach (var tcp in serverTcpConfig)
            {
                var linster = new Listener<NetState>();
                linster.StartServer(tcp.Host, tcp.Port);

                linster.SocketConnect += OnSocketConnect;
                linster.SocketDisconnect += OnSocketDisconnect;
                linster.SocketRecv += OnSocketRecv;

                Listeners[index++] = linster;
                Logs.Info("open socket {0}:{1}", tcp.Host, tcp.Port);
            }
        }
开发者ID:andyhebear,项目名称:HappyQ-WowServer,代码行数:27,代码来源:WorldBase.cs


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