### Navigation

- index
- modules |
- next |
- previous |
- home|
- search|
- documentation »
- The IPython API »

# parallel.apps.win32support

## Module: `parallel.apps.win32support`

Inheritance diagram for `IPython.parallel.apps.win32support`:

Utility for forwarding file read events over a zmq socket.

This is necessary because select on Windows only supports sockets, not FDs.

Authors:

- MinRK

## `ForwarderThread`

class `IPython.parallel.apps.win32support.``ForwarderThread`(sock, fd)

  Bases: `threading.Thread`

  `__init__`(sock, fd)
  `daemon`

    A boolean value indicating whether this thread is a daemon thread (True) or not (False).

    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 no alive non-daemon threads are left.

  `getName`()
  `ident`

    Thread identifier of this thread or None if it has not been started.

    This is a nonzero integer. See the thread.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.

  `isAlive`()

    Return whether the thread is alive.

    This method returns True just before the run() method starts until just after the run() method terminates. The module function enumerate() returns a list of all alive threads.

  `isDaemon`()
  `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. The module function enumerate() returns a list of all alive threads.

  `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 isAlive() 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.

  `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.

  `run`()

    Loop through lines in self.fd, and send them over self.sock.

  `setDaemon`(daemonic)
  `setName`(name)
  `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.

`IPython.parallel.apps.win32support.``forward_read_events`(fd, context=None)

  Forward read events from an FD over a socket.

  This method wraps a file in a socket pair, so it can be polled for read events by select (specifically zmq.eventloop.ioloop)

### Navigation

- index
- modules |
- next |
- previous |
- home|
- search|
- documentation »
- The IPython API »