Skip to main content
 首页 » 编程设计

python之Django 中的同时多任务处理

2025年05月04日20tuyile006

我的网络项目中有一个耗时的函数。当函数进行计算时,应呈现一个网页,通知用户计算完成后将通过电子邮件发送结果。

如果我将呈现放在函数调用之后,网页将在 time_consuming_function() 完成之前呈现,这会使响应变得毫无意义。

views.py: 
 
def web_function(request): 
    ... 
    time_consuming_function() 
    return HttpResponse() 

python线程是唯一的出路吗?


更新

最终使用 cellery,因为它似乎比 ztaskd 有更好的文档记录

请您参考如下方法:

要走的路是使用ztaskd执行 time_consuming_function()。

from django_ztask.decorators import task 
 
@task() 
def time_consuming_function() 
    ... 

views.py:

def web_function(request): 
    ... 
    time_consuming_function.async() 
    return HttpResponse()