我正在使用django来启动Web服务器。
像这样的test_sleep函数,
# views.py
import time
from django.http import HttpResponse
def test_sleep(request):
time.sleep(3)
return HttpResponse('I am awake')
这是我的网址:
...
urlpatterns = [
url(r'^test/', test_sleep),
]
...
当我在3秒内(睡眠的时间长度)访问两个chrome选项卡中的 test url时,第二个请求将在第一个请求完成之前执行。但是当我使用两个firefox选项卡时,它们可以在同一时间执行。
使用' python manage.py runserver '会自动启用多线程,那么为什么第二个请求会在Chrome浏览器中被阻止?
感谢。
答案 0 :(得分:0)
显然,与Firefox不同,Chrome的表现与众不同。如果您仍然知道原因,请联系Chrome的支持。
否则你的代码是正确的,Django真正创建了多线程。
顺便说一句:
URLS中的约定,用于编写views.name_of_function
等函数,因为类似于name_of_class.as_view()
的基于类的视图。