CSharpRTMP.Core.Protocols.ProtocolManager.EnqueueForDelete C# (CSharp) Method

EnqueueForDelete() public static method

public static EnqueueForDelete ( this pProtocol ) : void
pProtocol this
return void
        public static void EnqueueForDelete(this BaseProtocol pProtocol)
        {
            if (pProtocol.NearProtocol == null)
            {
                pProtocol.Log().Info("Enqueue for delete for protocol {0}", pProtocol.ToString());
            }
            pProtocol.Application = null;
            if (ActiveProtocols.ContainsKey(pProtocol.Id))
            {
                ActiveProtocols.Remove(pProtocol.Id);
            }
            if (!DeadProtocols.ContainsKey(pProtocol.Id))
            {
                DeadProtocols[pProtocol.Id] = pProtocol;
            }
           
        }

Usage Example

 public virtual void EnqueueForDelete()
 {
     if (!_enqueueForDelete)
     {
         _enqueueForDelete = true;
         ProtocolManager.EnqueueForDelete(this);
     }
 }