2
일정한 간격으로 여러 번 작업을 반복하고 싶습니다.이 작업을 일정한 방식으로 수행하고 싶습니다. 1 초에 4 번 작업을하고 싶습니다. t = 0, 0.25, 0.5 및 0.75에서 실행될 수있다. 지금 내가 뭐하는 거지 그래서동작을 t 초 동안 x 번 반복 실행
:
import math
import socket
s = socket.socket(...) #not important
time_step = 1./num_times_executed
for _ in num_times_executed:
now = time.time()
s.sendto(...) #action i do
time.sleep(max(0,time_step-(time.time()-now)))
그러나 많은 오버 헤드가, 더 큰 루프는 내가 얻을 더 드리프트입니다. 예를 들어 num_times_executed = 800 일 경우 1.1 초 걸리므로 10 % ~ 10 %가 잘못됩니다 ...
좋은 정밀도로이를 수행 할 수있는 방법이 있습니까?