cronジョブを使わずに5分ごとに関数を実行したいとします。django-background-taskを使ってタイムループに関数を入れることは可能ですか?
実際にその関数を呼び出すdjangoのバックグラウンドタスクを作成し、その関数の最後にschedule = say * 5のタスクを作成します。
これは、効果的に時間ベースのループに関数を置きます。
私はいくつかの反復を試みましたが、インポートエラーが発生しています。しかし、それは可能かどうか?
cronジョブを使わずに5分ごとに関数を実行したいとします。django-background-taskを使ってタイムループに関数を入れることは可能ですか?
実際にその関数を呼び出すdjangoのバックグラウンドタスクを作成し、その関数の最後にschedule = say * 5のタスクを作成します。
これは、効果的に時間ベースのループに関数を置きます。
私はいくつかの反復を試みましたが、インポートエラーが発生しています。しかし、それは可能かどうか?
いいえどのような場合でも、djangoで周期的なインポートの問題を効果的に作成することはできません。タスクでは、その関数をインポートする必要があり、その関数のファイルでタスクをインポートする必要があるためです。
どのような戦略をとっても、同じ問題に陥ることはありません。
私は何かを作った。これをお探しですか?
import threading
import time
def worker():
"""do your stuff"""
return
threads = list()
while (true):
time.sleep(300)
t = threading.Thread(target=worker)
threads.append(t)
t.start()
はい、これは私もcronジョブを設定して行うことができ、目的を果たすかもしれませんが、私は、バックグラウンドタスク – Rohit
@Rohitでループを作成する方法について、実際に興味がありました。スレッドを使用しているため、並列処理を使用できます。つまり、このループを別の関数のスレッドとして呼び出すことができます。 –