public bool OnConnect(NonBlockingConnection conn) { ConsoleEx.DebugLog("Connect to the Server."); curConnectType = isConnectType.isConnected; HandleTask(); return(true); }
/// <summary> /// 强制重连 /// </summary> public void ReConnect() { if (curConnectType != isConnectType.isConnecting) { curConnectType = isConnectType.isConnecting; Conn.Connect(); } }
public void OnLogin(object ServerEndPoint) { endPoint = ServerEndPoint as DnsEndPoint; Conn = new NonBlockingConnection(endPoint.Host, endPoint.Port, this); if (curConnectType == isConnectType.isConnecting) { curConnectType = isConnectType.isDisconnect; } }
public void sendSocketTask(SocketTask task) { if (task.request.type == BaseSocketRequestType.Internal_Control) { HandleInternalTask(task); } else { if (isConnected) { HandleTask(task); } else { //添加到队列里面来, workQueue.Enqueue(task); if (curConnectType != isConnectType.isConnecting) { curConnectType = isConnectType.isConnecting; Conn.Connect(); } } } }
private SocketEngine() { curConnectType = isConnectType.isDisconnect; workQueue = new ThreadSafeQueue <SocketTask>(QUEUE_CAPACITY); TaskQueue = new Dictionary <int, SocketTask>(); }
public bool OnException(NonBlockingConnection conn, Exception e) { Socket_CommException(e.ToString()); curConnectType = isConnectType.isDisconnect; return(true); }
public bool OnDisconnect(NonBlockingConnection conn) { Socket_CommException("Disconnect from the Server."); curConnectType = isConnectType.isDisconnect; return(true); }