示例#1
0
 void nsModifier_AliceLoopClosed(object sender, EventArgs e)
 {
     lock (dictIsDisposed)
     {
         NetworkStreamModifier nsModifier = (NetworkStreamModifier)sender;
         dictIsDisposed[nsModifier]--;
         if (dictIsDisposed[nsModifier] < 0)
         {
             throw new InvalidOperationException("A loop stopped event was received more than two times from an strem modifier. Since a stream modifier contains only two loops, this could not be possible.");
         }
         nsModifier.AliceLoopClosed -= new EventHandler(nsModifier_AliceLoopClosed);
     }
 }
示例#2
0
        protected TCPStreamModifierStack GetStackForOperator(NetworkStreamModifier nsToFind)
        {
            lock (lStacks)
            {
                foreach (TCPStreamModifierStack sStack in lStacks)
                {
                    foreach (NetworkStreamModifier nsModifier in sStack.Modifiers)
                    {
                        if (nsModifier == nsToFind)
                        {
                            return(sStack);
                        }
                    }
                }

                return(null);
            }
        }
示例#3
0
 public bool IsModifierDisposed(NetworkStreamModifier nsModifier)
 {
     return(dictIsDisposed[nsModifier] == 0);
 }