Пример #1
0
    def run(self):
        tstart = exact_time()
        extra_delay = 0

        i = 0
        while i < self._n:
            f = self._cb

            try:
                extra_delay += f(i, *self._args, **self._kwargs)
            except Exception, e:
                self.emit('finished')
                raise e

            if self.get_stop_request():
                logging.info('Stop requested')
                self.emit('finished', self._stop_message)
                return

            i += 1
            if i == self._n:
                break

            # delay
            tn = exact_time()
            if 'time_exact' in self._kwargs:
                req_delay = tstart + extra_delay / 1000.0 + float(
                    i) * self._delay / 1000.0 - tn
                if req_delay > 0:
                    time.sleep(req_delay)
            else:
                time.sleep((extra_delay + self._delay) / 1000.0)
Пример #2
0
    def run(self):
        tstart = exact_time()
        extra_delay = 0

        i = 0
        while i < self._n:
            f = self._cb

            try:
                extra_delay += f(i, *self._args, **self._kwargs)
            except Exception, e:
                self.emit('finished')
                raise e

            if self.get_stop_request():
                logging.info('Stop requested')
                self.emit('finished', self._stop_message)
                return

            i += 1
            if i == self._n:
                break

            # delay
            tn = exact_time()
            if 'time_exact' in self._kwargs:
                req_delay = tstart + extra_delay / 1000.0 + float(i) * self._delay / 1000.0 - tn
                if req_delay > 0:
                    time.sleep(req_delay)
            else:
                time.sleep((extra_delay + self._delay) / 1000.0)
Пример #3
0
    def start(self):
        from qtlab.source import qt
        tstart = exact_time()

        i = 0
        while i < self._n:
            self._cb(i, *self._args, **self._kwargs)

            i += 1
            if i == self._n:
                break

            # delay
            tn = exact_time()
            req_delay = tstart + float(i) * self._delay / 1000.0 - tn
            if req_delay > 0:
                qt.msleep(req_delay)