Esempio n. 1
0
    public void ReceiveSorket(object parm)
    {
        threadInfo     info        = ((threadInfo)parm);
        AutoResetEvent handleEvent = info.recvEndEvent;

        while (bRecb)
        {
            if (!clientSocket.Connected)
            {
                GameDebug.Log("Failedd to clientSocket serer. whyyyyyy");
                clientSocket.Close();
                break;
            }
            try
            {
                SplitPackage(JFRecvPackage.RecvPackage(clientSocket), 0);
            }
            catch (Exception e)
            {
                GameDebug.LogError("Failed to clientSocket error." + e);
                if (clientSocket != null && clientSocket.Connected)
                {
                    clientSocket.Close();
                }
                break;
            }
        }

        handleEvent.Set();
    }
Esempio n. 2
0
    JFSocket()
    {
        waitHandls    = new WaitHandle[1];
        waitHandls[0] = new AutoResetEvent(false);

        threadInfoData              = new threadInfo();
        threadInfoData.Handle       = null;
        threadInfoData.recvEndEvent = (AutoResetEvent)waitHandls[0];

        _worldPackages  = new List <JFPackage.IPackage>();
        _worldPackages2 = new List <JFPackage.IPackage>();
        _curPackages    = _worldPackages;
        clientSocket    = null;
    }