public bool Listen(ushort port, TCPNetBase.OnAcceptFunction accept, TCPNetBase.OnReceiveFunction receive, TCPNetBase.OnCloseFunction close) { OnAccept = accept; OnReceive = receive; OnClose = close; m_socket = new TCPServerSocket(); m_socket.OnOpen += OnAcceptConnect; m_socket.OnMessage += OnMessageReveived; m_socket.OnClose += OnConnectClose; m_socket.Start(port); return(true); }
public long Connect(string ip, ushort port, TCPNetBase.OnConnectedFunction connected, TCPNetBase.OnReceiveFunction receive, TCPNetBase.OnCloseFunction close) { OnConnected = connected; OnReceive = receive; OnClose = close; m_socket = new TCPClientSocket(); m_socket.OnOpen += OnAcceptConnect; m_socket.OnMessage += OnMessageReveived; m_socket.OnClose += OnConnectClose; m_socket.Connect(ip, port); return(m_conn_idx); }
/// <summary> /// 内部调用或底层触发 /// </summary> public virtual void Close() { OnReceive = null; OnClose = null; }
/// <summary> /// 连接主机 /// </summary> public long ConnectTo(string ip, ushort port, TCPNetBase.OnConnectedFunction connected, TCPNetBase.OnReceiveFunction receive, TCPNetBase.OnCloseFunction close) { TCPNetConnecter socket = new TCPNetConnecter(); socket.Setup(); socket.conn_idx = ++m_share_conn_idx; m_connectedes.Add(socket.conn_idx, socket); socket.Connect(ip, port, connected, receive, close); return(socket.conn_idx); }