xonsh.procs.posix¶
Interface for running subprocess-mode commands on posix systems.
- class xonsh.procs.posix.PopenThread(*args, stdin=None, stdout=None, stderr=None, **kwargs)[source]¶
- A thread for running and managing subprocess. This allows reading from the stdin, stdout, and stderr streams in a non-blocking fashion. - This takes the same arguments and keyword arguments as regular Popen. This requires that the captured_stdout and captured_stderr attributes to be set following instantiation. - This constructor should always be called with keyword arguments. Arguments are: - group should be None; reserved for future extension when a ThreadGroup class is implemented. - target is the callable object to be invoked by the run() method. Defaults to None, meaning nothing is called. - name is the thread name. By default, a unique name is constructed of the form “Thread-N” where N is a small decimal number. - args is a list or tuple of arguments for the target invocation. Defaults to (). - kwargs is a dictionary of keyword arguments for the target invocation. Defaults to {}. - If a subclass overrides the constructor, it must make sure to invoke the base class constructor (Thread.__init__()) before doing anything else to the thread. - getName()¶
- Return a string used for identification purposes only. - This method is deprecated, use the name attribute instead. 
 - isDaemon()¶
- Return whether this thread is a daemon. - This method is deprecated, use the daemon attribute instead. 
 - is_alive()¶
- Return whether the thread is alive. - This method returns True just before the run() method starts until just after the run() method terminates. See also the module function enumerate(). 
 - join(timeout=None)¶
- Wait until the thread terminates. - This blocks the calling thread until the thread whose join() method is called terminates – either normally or through an unhandled exception or until the optional timeout occurs. - When the timeout argument is present and not None, it should be a floating point number specifying a timeout for the operation in seconds (or fractions thereof). As join() always returns None, you must call is_alive() after join() to decide whether a timeout happened – if the thread is still alive, the join() call timed out. - When the timeout argument is not present or None, the operation will block until the thread terminates. - A thread can be join()ed many times. - join() raises a RuntimeError if an attempt is made to join the current thread as that would cause a deadlock. It is also an error to join() a thread before it has been started and attempts to do so raises the same exception. 
 - run()[source]¶
- Runs the subprocess by performing a parallel read on stdin if allowed, and copying bytes from captured_stdout to stdout and bytes from captured_stderr to stderr. 
 - setDaemon(daemonic)¶
- Set whether this thread is a daemon. - This method is deprecated, use the .daemon property instead. 
 - setName(name)¶
- Set the name string for this thread. - This method is deprecated, use the name attribute instead. 
 - start()¶
- Start the thread’s activity. - It must be called at most once per thread object. It arranges for the object’s run() method to be invoked in a separate thread of control. - This method will raise a RuntimeError if called more than once on the same thread object. 
 - wait(timeout=None)[source]¶
- Dispatches to Popen.wait(), but also does process cleanup such as joining this thread and replacing the original window size signal handler. 
 - property daemon¶
- A boolean value indicating whether this thread is a daemon thread. - This must be set before start() is called, otherwise RuntimeError is raised. Its initial value is inherited from the creating thread; the main thread is not a daemon thread and therefore all threads created in the main thread default to daemon = False. - The entire Python program exits when only daemon threads are left. 
 - property ident¶
- Thread identifier of this thread or None if it has not been started. - This is a nonzero integer. See the get_ident() function. Thread identifiers may be recycled when a thread exits and another thread is created. The identifier is available even after the thread has exited. 
 - property name¶
- A string used for identification purposes only. - It has no semantics. Multiple threads may be given the same name. The initial name is set by the constructor. 
 - property native_id¶
- Native integral thread ID of this thread, or None if it has not been started. - This is a non-negative integer. See the get_native_id() function. This represents the Thread ID as reported by the kernel. 
 - property returncode¶
- Process return code. 
 - property signal¶
- Process signal, or None.