• 测试Socket监听请求----处理Socket


    测试Socket监听请求----处理Socket,代码如下:

    #region 测试Socket
    
            /// <summary>
            /// 测试Socket
            /// </summary>
            public static void TestSocket()
            {
                var threadStart = new Thread(new ThreadStart(StartSocket))
                {
                    IsBackground = true
                };
                threadStart.Start();
                Console.WriteLine($"WebSocket开始测试数据");
    
                int test = 1;
                while (true)
                {
                    Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                    socket.Connect(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 3344));
                    Console.WriteLine($"scoket client 发送数据:{test}");
                    socket.Send(Encoding.UTF8.GetBytes($"client{test}"));
    
                    var buffer = new byte[1024];
                    var socketConnReceCount = socket.Receive(buffer);
                    Console.WriteLine($"scoket client 接收数据:{Encoding.UTF8.GetString(buffer, 0, socketConnReceCount)}");
    
                    test++;
                    Thread.Sleep(2000);
                    socket.Dispose();
                }
            }
    
            public static async void StartSocket()
            {
                Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                socket.LingerState.Enabled = false;
                socket.Bind(new IPEndPoint(IPAddress.Parse("127.0.0.1"), 3344));
                socket.Listen(10);
                int test = 1;
                Console.WriteLine($"Socket服务端 启动监听");
                while (true)
                {
                    var socketConn = await socket.AcceptAsync();
                    var buffer = new byte[1024];
                    var socketConnReceCount = socketConn.Receive(buffer);
                    Console.WriteLine($"scoket 服务端接收数据:{Encoding.UTF8.GetString(buffer, 0, socketConnReceCount)}");
    
                    Console.WriteLine($"scoket 服务端处理数据:{test}");
                    socketConn.Send(Encoding.UTF8.GetBytes($"服务端已处理{test}"));
                    socketConn.Dispose(); 
                }
            }
    
            #endregion

    测试结果如下:

     public class Program
        {
            static void Main(string[] args)
            {
                #region  #region 测试Socket
                TestSocket(); 
                #endregion
                Console.Read();
            }
        }

  • 相关阅读:
    2018/12/21 HDU-2077 汉诺塔IV(递归)
    2018-12-08 acm日常 HDU
    2018/12/12 acm日常 第二周 第六题
    git 添加远程分支,并可以code review.
    zookeeper数据迁移方法
    gem install nokogiri -v '1.6.6.2' 出错
    gem install json -v '1.8.2' error
    gem install bundle 安装失败
    全能型开源远程终端:MobaXterm
    如何写好 Git Commit 信息
  • 原文地址:https://www.cnblogs.com/1175429393wljblog/p/14150251.html
Copyright © 2020-2023  润新知