我有一个多线程的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完成的。有什么想法吗?