def METHOD_NAME(self, proc):
    utils.name_thread(proc.name())
    monitor = edge.Edge(self._edge_conf)
    proc.connect_output_port(process.PythonProcess.port_heartbeat, monitor)
    complete = False
    while not complete and not self._event.is_set():
        while self._pause_event.is_set():
            self._pause_event.wait()
        proc.step()
        while monitor.has_data():
            edat = monitor.get_datum()
            dat = edat.datum
            if dat.type() == datum.DatumType.complete:
                complete = True