public override void Start()
 {
     Session _session = getSession();
     try
     {
         Request request;
         if (xforwading)
         {
             request = new RequestX11();
             request.request(_session, this);
         }
         if (pty)
         {
             request = new RequestPtyReq();
             request.request(_session, this);
         }
         request = new RequestSubsystem();
         ((RequestSubsystem)request).request(_session, this, subsystem, want_reply);
     }
     catch (Exception e)
     {
         if (e is JSchException) { throw (JSchException)e; }
         throw new JSchException("ChannelSubsystem",e);
     }
     if (io.In != null)
     {
         thread = new Thread(this.run);
         thread.Name="Subsystem for " + _session.host;
         if (_session.daemon_thread)
         {
             thread.IsBackground=_session.daemon_thread;
         }
         thread.Start();
     }
 }
        public override void Start()
        {
            Session _session = getSession();

            try
            {
                Request request;
                if (xforwading)
                {
                    request = new RequestX11();
                    request.request(_session, this);
                }
                if (pty)
                {
                    request = new RequestPtyReq();
                    request.request(_session, this);
                }
                request = new RequestSubsystem();
                ((RequestSubsystem)request).request(_session, this, subsystem, want_reply);
            }
            catch (Exception e)
            {
                if (e is JSchException)
                {
                    throw (JSchException)e;
                }
                throw new JSchException("ChannelSubsystem", e);
            }
            if (io.In != null)
            {
                thread      = new Thread(this.run);
                thread.Name = "Subsystem for " + _session.host;
                if (_session.daemon_thread)
                {
                    thread.IsBackground = _session.daemon_thread;
                }
                thread.Start();
            }
        }