gpt4 book ai didi

Django 子进程

转载 作者:行者123 更新时间:2023-12-04 06:57:11 25 4
gpt4 key购买 nike

如果这是重复的,我真的很抱歉,但我一直在寻找,但无法找到答案。

在 Django 中,我想做一些类似的事情(见评论):

# we have a file in our database...
v = create_file_entry(clean_data, ip_address)
# next, start a *background process* to upload the file somewhere else...
p = Process(target=upload_file, args=(filepath,v))
p.start()
p.join()
# ...we don't care about the result of the process, or
# wait for it to finish, just redirect the user to success *immediately*
return HttpResponseRedirect('/success/')

我希望代码启动upload_file进程,然后将用户重定向到成功页面 立即 , 而 upload_file进程在后台运行(很慢)。我认为子流程可能会做到这一点。

不幸的是,上面的代码似乎在等待 upload_file在将用户重定向到成功页面之前完成的过程,这不是我需要的。

请注意 upload_file是我的 views.py 中的 Python 函数文件。我听说过 popen - 我想我可以转换 def upload_file进入一个独立的 Python 脚本并从命令行运行它 - 是否会开始运行然后立即重定向用户,如我所愿?或者我应该使用某种线程/进程?

----更新-----

我想我可能已经想通了...如果我只是这样做 p.start()而不是 p.join() ,然后进程立即重定向。不过,这有什么危险吗?

最佳答案

考虑为处理编写一个单独的守护进程并通过消息队列与它通信。

关于Django 子进程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2420471/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com