• asp.net小记之——线程


    2012年10月26日,星期五
     
    线程池*
    TCP和UDP的区别*
     
    手动创建线程:
        Thread thread = new Thread(new Thread.Start(DemoMethod));
        thread.IsBackground = true;
        thread.Name = "xqt";
        thread.Priority = ThreadPriority.Highest;//设置线程的级别
        thread.Start();

        static void DemoMethod()
        {
            Console.WriteLine(Thread.CurrentThread.ManagedThreadId);
        }
     
    Socket通信的模型:
        服务器端:
            -创建Socket:寻址方式,传输的方式,协议————只负责接听
            -绑定一个Host地址和端口:端口同一时间只能被一个进程占用;
            -开启侦听:Linsten();
            -接收用户的请求:Accept();————创建一个新的通信套接字;
            -客户端关闭Socket时,就关闭了通信Socket;
        客户端:
            -创建Socket
            -连接到服务器端——指定IP和端口
            -与服务器端新创建的套接字进行通信
            -可进行Send和Recive了
            -客户端可调用SocketShutdown关闭Socket
            -直接Socket.Close()关闭时,服务器端会报异常,除非手动关闭;
     
    //socket通信模型,服务器端
                - Socket socket = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);
                - IPAddress ipAddress = IPAddress.Parse("127.0.0.1");
                - IPEndPoint endPoint = new IPEndPoint(ipAddress, 8888);
                - socket.Bind(endPoint);
                - socket.Listen(10);
    //客户端:
               - Socket clientSocket = new Socket(AddressFamily.InterNetwork,SocketType.Stream,ProtocolType.Tcp);
               - IPEndPoint endPoint = new IPEndPoint(IPAddress.Parse("127.0.0.1"),8888);
               - clientSocket.Connect(endPoint);
     
    SocketHelper:
    public class SocketHelper
        {
            //创建服务器端socket
            //创建一个监听一个ip和端口的socket
            //传递两个参数:ip,端口号
            public static Socket CreateListenSocket(string ip,int port)
            {
                if(string.IsNullOrEmpty(ip) || port>65535 || port < 0)
                {
                    return null;
                }
                Socket socket = new Socket(AddressFamily.InterNetWork,SocketType.Stream,ProtocolType.Tcp);
                IPAddress ipAddress = IPAddress.Parse(ip);
                IPEndPoint endpoint = new IPEndPoint(ipAddress,port);
                socket.Bind(endpoint);
                socket.Listen(10);
                return socket;
            }
            //客户端连接服务器
            public static Socket ConnectServer(string ip,int port)
            {
                Socket clientSocket = null;
                try
                {
                    clientSocket = new Socket(AddressFamily.InterNetWork,SocketType.Stream,ProtocolType.Tcp);
                    IPEndPoint endPoint = new IPEndPoint(IPAddress.Parse(ip),port);
                    clientSocket.Connect(endPoint);
                }
                finally
                {
                    //记录日志
                }
                return clientSocket;
            }
        }
     
     



  • 相关阅读:
    2018 我要告诉你的 Vue 知识大全
    探究Javascript模板引擎mustache.js使用方法
    高性能JavaScript模板引擎实现原理详解
    junit报错
    http报文
    web应用和http协议
    eclipse首次使用基本设置
    利用亚马逊AWS搭建个人服务器
    图文详解 IntelliJ IDEA 15 创建普通 Java Web 项目
    MyEclipse 设置条件断点
  • 原文地址:https://www.cnblogs.com/xuquantong/p/2745502.html
Copyright © 2020-2023  润新知