def recv_exit_status(self):
self.status_event.wait()<EOL>assert self.status_event.is_set()<EOL>return self.exit_status<EOL>
Return the exit status from the process on the server.  This is
mostly useful for retrieving the results of an `exec_command`.
If the command hasn't finished yet, this method will wait until
it does, or until the channel is closed.  If no exit status is
provided by the server, -1 is returned.

.. warning::
    In some situations, receiving remote output larger than the current
    `.Transport` or session's ``window_size`` (e.g. that set by the
    ``default_window_size`` kwarg for `.Transport.__init__`) will cause
    `.recv_exit_status` to hang indefinitely if it is called prior to a
    sufficiently large `.Channel.recv` (or if there are no threads
    calling `.Channel.recv` in the background).

    In these cases, ensuring that `.recv_exit_status` is called *after*
    `.Channel.recv` (or, again, using threads) can avoid the hang.

:return: the exit code (as an `int`) of the process on the server.

.. versionadded:: 1.2