# Worker class

class `pymeasure.experiment.workers.``Worker`(results, log_queue=None, log_level=20, port=None)

  Bases: `pymeasure.thread.StoppableThread`

  Worker runs the procedure and emits information about the procedure and its status over a ZMQ TCP port. In a child thread, a Recorder is run to write the results to

  `emit`(topic, record)

    Emits data of some topic over TCP

  `handle_abort`()
  `handle_error`()
  `join`(timeout=0)

    Joins the current thread and forces it to stop after the timeout if necessary

    Parameters

      timeout – Timeout duration in seconds

  `run`()

    Method representing the thread’s activity.

    You may override this method in a subclass. The standard run() method invokes the callable object passed to the object’s constructor as the target argument, if any, with sequential and keyword arguments taken from the args and kwargs arguments, respectively.

  `shutdown`()
  `update_status`(status)