如何使用Python实现每100ms执行一次的循环任务

How do I use Python to implement a circular task that executes every 100ms

我需要模拟两种场景,其中每 100ms 使用 redis.xadd("stream_name", {"key": "value"}, maxlen=100, approximate=False) 将一条数据插入 Redis 数据库,这是 Redis-Stream 数据类型的功能。我想让Redis数据库的插入timestamp在两种场景下都一样

因此,我也需要设置相同的start time,这样在开始时间和the same loop interval也就是100ms一样,插入时间也就是用到xadd函数的两个Redis的数据应该是一致的。

我查了一下,发现Apscheduler是一个很好的定时任务,但是它的间隔只有seconds,而不是milliseconds

我不知道有什么更好的方法来实现我的场景需求。

如果能告诉我如何解决,我将不胜感激?

不太确定这是否会满足您的要求,但 time.sleep() 函数可以通过十进制参数执行毫秒数。

from time import sleep

while True:
    sleep(0.1)  # or 100/1000
    # do something