示例#1
0
 private void OnComplete(SocketAsyncEventArgs args, ServerSocketAction action)
 {
     try
     {
         Completed?.Invoke(args, action);
     }
     catch (Exception e)
     {
         Debug.LogError($"ServerScript OnComplete Exception - {e}");
         throw;
     }
 }
    private void OnComplete(SocketAsyncEventArgs args, ServerSocketAction action)
    {
        switch (action)
        {
        case ServerSocketAction.Listen:
            // 因为启动顺序的关系,这段代码不会被执行到
            receive_str = $"RoomServer started! {_server.Address}:{_server.Port}";
            Log(receive_str);
            break;

        case ServerSocketAction.Accept:
            receive_str = $"RoomServer accepted a client! Total Count :{_server.ClientCount}/{_server.MaxClientCount}";
            Log(receive_str);
            break;

        case ServerSocketAction.Send:
        {
            //int size = args.BytesTransferred;
            //Log($"RoomServer send a message. {size} bytes");
        }
        break;

        case ServerSocketAction.Receive:
        {
            //int size = args.BytesTransferred;
            //Log($"RoomServer receive a message. {size} bytes");
        }
        break;

        case ServerSocketAction.Drop:
            DropAClient(args);
            receive_str = $"RoomServer drop a client! Total Count :{_server.ClientCount}/{_server.MaxClientCount}";
            Log(receive_str);
            break;

        case ServerSocketAction.Close:
            StopCheckHeartBeat();
            receive_str = "RoomServer Stopped!";
            Log(receive_str);
            break;

        case ServerSocketAction.Error:
            receive_str = System.Text.Encoding.UTF8.GetString(args.Buffer);
            Debug.LogError(receive_str);
            break;
        }
    }
示例#3
0
    void OnComplete(SocketAsyncEventArgs args, ServerSocketAction action)
    {
        switch (action)
        {
        case ServerSocketAction.Listen:
            // 暂时不会有代码走到这里。
            Log($"Server started! {_server.Address}:{_server.Port}");
            break;

        case ServerSocketAction.Accept:
            Log($"Server accepted a client! Total Count :{_server.ClientCount}/{_server.MaxClientCount}");
            break;

        case ServerSocketAction.Send:
        {
            //int size = args.BytesTransferred;
            //Log($"Server send a message. {size} bytes");
        }
        break;

        case ServerSocketAction.Receive:
        {
            //int size = args.BytesTransferred;
            //Log($"Server receive a message. {size} bytes");
        }
        break;

        case ServerSocketAction.Drop:
            DropAClient(args);
            Log($"Server drop a client! Total Count :{_server.ClientCount}/{_server.MaxClientCount}");
            break;

        case ServerSocketAction.Close:
            Log("Server Stopped!");
            break;

        case ServerSocketAction.Error:
            receive_str = System.Text.Encoding.UTF8.GetString(args.Buffer);
            Debug.LogError(receive_str);
            break;
        }
    }