private PipeThreadState CreateThreadState(Thread t)
        {
            var pts = new PipeThreadState(t);

            _threads.Add(pts);
            return(pts);
        }
 private void ThreadClosed(PipeThreadState pts)
 {
     if (_active)
     {
         var t = new Thread(RunThreadClosed);
         t.Start(pts);
     }
 }