我有一个多线程 django 应用程序,它在单独的线程中创建一些对象以便更快地返回。创建的对象仅用于跟踪用户所做的事情,并且对时间不敏感。
以前的视图函数看起来像这样:
def foo(request):
#... do important computation...
bar(x, y, z)
return HttpResponse()
这里一切正常,但是当我将其更改为这样并使用线程时:
def foo(request):
#... do important computation...
thread = Thread(target=bar, args=(x, y, z))
thread.start()
if testing_mode:
thread.join()
return HttpResponse()
第二个版本失败。这一切都是使用TransactionTestCase
mySQL 完成的。
有任何想法吗?