我正在APScheduler中运行一个进程,该进程需要以半秒的间隔运行,但是“间隔”触发器似乎仅接受低至1秒的值(仅基于文档,第二个参数需要一个int )。有没有一种方法可以在APScheduler上获得亚秒级的调度,或者有另一个调度库可以让我以亚秒级的间隔进行调度,然后在中途更改该间隔。
答案 0 :(得分:0)
我最终将进程创建为带有事件的单独线程。
def measure_value(self, meas_list, start_time, interval_time, stop_event):
random.seed()
while(not stop_event.is_set()):
stop_event.wait(interval_time)
measurements = [random.random(), random.random()]
meas_time = time.time()
'''
meas_string = self.inst_ref.query('MEAS:CURR?;VOLT?') #grab the output current and voltage
measurements = meas_string.split(';')
'''
meas_time = meas_time - start_time
measurements.append(meas_time)
meastuple = tuple(float(m) for m in measurements)
meas_list.append(meastuple)
print(meastuple)
self.fp.update(meastuple)
还有另一个最终被调用的线程,它设置了stop事件,以便此循环停止执行并关闭该线程。