public bool Iterate()
{
if(this.pending.CompareAndSet(true, false) && this.parent.monitorStarted.Value)
{
IOException ex = new IOException("Channel was inactive for too long: " + remote);
this.parent.OnException(parent, ex);
}
return this.pending.Value;
}