public static DGTcpClient CreateConnection(string ip, int port, LuaFunction onConnectFuncName, LuaFunction onMessageFuncName, LuaFunction onDisconnectFuncName, LuaFunction setServerTimeFuncName, bool needHeartBeat = true, ushort heartBeatProtoID = 5, ushort rHeartBeatProtoID = 6, float interval = 5f, float timeout = 15f, bool needLuaHBCallback = false, int tSleep = 50, string tag = "DGTcpClient") { DGTcpClient client = new DGTcpClient(ip, port, onConnectFuncName, onMessageFuncName, onDisconnectFuncName, setServerTimeFuncName, needHeartBeat, heartBeatProtoID, rHeartBeatProtoID, interval, timeout, needLuaHBCallback, tSleep, tag); client.Connect(); ClientArray.Add(client); return(client); }
public static void CloseConnection(DGTcpClient client) { try { if (client == null) { return; } for (int i = ClientArray.Count - 1; i >= 0; i--) { var lClient = ClientArray[i]; if (client == lClient) { ClientArray.RemoveAt(i); lClient.Disconnect(); } } } catch (Exception e) { Debug.Log("TcpClientHelper CloseConnection Error: e = " + e.Message + " trace = " + e.StackTrace); } }