zoukankan      html  css  js  c++  java
  • Common.TcpLib delegate interface

    using System;
    using System.Text;
    using System.Collections;
    using System.Collections.Generic;
    using System.Net;
    using System.Net.Sockets;
    using System.Threading;
    using System.Runtime.InteropServices;

    namespace Common.TcpLib
    {

        public enum ErrorType { MaxConnect, Catch, DisConnect, DisAccept };

        #region delegate
        //Tcp
        //服务端专用
        public delegate void _Bgz_OnBindEventDelegate(_Bgz_ConnectionState state);
        public delegate void _Bgz_OnAcceptEventDelegate(_Bgz_ConnectionState state);
        public delegate void _Bgz_OnDropConnectEventDelegate(_Bgz_ConnectionState state);
        //客户端专用
        public delegate void _Bgz_OnConnectEventDelegate(_Bgz_ConnectionState state);
        //公用
        public delegate void _Bgz_OnErrorEventDelegate(ErrorType errortype, string errormsg, _Bgz_ConnectionState state);
        public delegate void _Bgz_OnReceiveBeginEventDelegate(_Bgz_ConnectionState state);
        public delegate void _Bgz_OnReceiveingEventDelegate(_Bgz_ConnectionState state);
        public delegate void _Bgz_OnReceiveEndEventDelegate(_Bgz_ConnectionState state);


     
        #endregion


    }

    using System;
    namespace Common.TcpLib
    {
        interface ITcpClient
        {
            int BufferSize { get; }
            bool Debug { get; set; }

            void Connect();

            void Send(byte[] msg);
            void SendAsync(byte[] msg);
            void SendAsync(System.IO.Stream Astream);

            void Stop();
        }
    }

    using System;
    namespace Common.TcpLib
    {
        interface ITcpServer
        {
            int BackLog { get; }
            int BufferSize { get; }
            bool Debug { get; set; }
            System.Net.Sockets.Socket[] ClientSockets { get;}
           
            void Send(byte[] msg);
            void Send(System.Net.Sockets.Socket ClientSocket, byte[] msg);
            void SendAsync(System.Net.Sockets.Socket ClientSocket, byte[] msg);
            void SendAsync(System.Net.Sockets.Socket ClientSocket, System.IO.Stream Astream);
           
            void Start();
            void Start(bool optionValue);
           
            void Stop();
        }
    }
  • 相关阅读:
    Mac idea 打不开
    git学习之git reset命令
    更改 macOS 用户帐户和个人文件夹的名称
    SpringBoot系列: 如何优雅停止服务
    windows环境下启动mongodb服务
    rocketMq4.2.0启动broker报错找不到或无法加载主类 FilesJavajdk1.8.0_101libdt.jar;C:Program]
    初创公司与成熟的公司各有什么利弊?有5年工作经验的人适合进那一个?(行业职位是一样的情况下)
    mac 10.15 国内如何安装brew
    Mac下SSH Key配置
    买苹果MacBook Pro ,有必要买care吗?
  • 原文地址:https://www.cnblogs.com/bigmouthz/p/946783.html
Copyright © 2011-2022 走看看