Jeśli masz instancję pracy pod ręką, po prostu
job.cancel()
Lub jeśli możesz określić skrót:
from rq import cancel_job
cancel_job('2eafc1e6-48c2-464b-a0ff-88fd199d039c')
http://python-rq.org/contrib/
Ale to po prostu usuwa go z kolejki; Nie wiem, czy to zabije, jeśli jest już wykonywane.
Możesz kazać mu rejestrować czas ściany, a następnie okresowo sprawdzać się i zgłaszać wyjątek/autodestrukcję po pewnym czasie.
W przypadku ręcznego, ad-hoc stylu śmierci:Jeśli masz redis-cli
zainstalowany, możesz zrobić coś drastycznego, jak kolejki i zadania flushall:
$ redis-cli
127.0.0.1:6379> flushall
OK
127.0.0.1:6379> exit
Nadal grzebię w dokumentacji, aby znaleźć sposób na precyzyjne zabijanie.
Nie jestem pewien, czy to komuś pomoże, ponieważ pytanie ma już 18 miesięcy.