Esempio n. 1
0
 public virtual void Release()
 {
     lock (stateLock)
     {
         if (State == ProxletState.Processing)
         {
             State = ProxletState.Available;
             pool.ProxletReleased(this);
         }
         else if (State == ProxletState.Disposed)
         {
             throw new ProxletDisposedException();
         }
     }
 }
Esempio n. 2
0
        public void Process(Socket m_clientSocket)
        {
            lock (stateLock)
            {
                if (State == ProxletState.Disposed)
                {
                    throw new ProxletDisposedException();
                }
                else if (State == ProxletState.Processing)
                {
                    throw new ProxletBusyException();
                }

                State = ProxletState.Processing;

                ProcessConnection(m_clientSocket);
            }
        }