Я работаю с воркерами и очередью
from rq import Queue
from redis import Redis
import time
redis_conn = Redis()
queue = Queue(connection=redis_conn)
list_int = []
def worker(num, timeout):
time.sleep(timeout)
list_int.append(num)
return num
проблема состоит в том, что когда воркер становится в очередь, он содержит в себе ссылку на пустой список
И если мы запускаем воркеры с периодичностью 1 сек, а им передаётся время ожидания 5 секунд, то они перезаписывают список
То есть элементы не добавляются в конец списка, а создаётся список с одним элементом
Я пока не особо понимаю, как это решить
Если у кого-то есть мысли- буду премного благодарен)
З.Ы. Забыл показать как это вообще в очередь становится
from fastapi import FastAPI
@app.get("/api/{num}/{timeout}")
def read_root(num: int, timeout: int):
job = queue.enqueue(worker, num, timeout)
return {"Task": "in work"}