如果超过一定时间,则终止VIEWS.PY函数执行-DJANGO

时间:2018-09-17 15:02:11

标签: python django multithreading python-multithreading

如果超过一定时间,我需要终止功能。通过谷歌搜索,我找到了解决方案,但现在面临另一个问题。我正在做这样的事情。

def index(Request):

p = multiprocessing.Process(target=foo, name="Foo", args=(5,))
p.start()

# Wait 10 seconds for foo
time.sleep(10)

# Terminate foo
p.terminate()

# Cleanup
p.join()
return HttpResponse("exit")

//run foo for 25 second
def foo(n):
   for i in range(5 * n):
       times = strftime("%H:%M:%S", gmtime())
       print (times)
       time.sleep(1)

上面的代码解决了我的问题,即它在10秒后终止了进程,但是如果foo函数在5秒钟内完成其任务,由于以下原因,它仍然需要10秒钟来完成主线程 time.sleep(10)

因此,我想在foo完成线程执行时结束线程,或者如果花费的时间超过一定时间,也要终止线程。

谢谢

0 个答案:

没有答案