Python Django:使视图一次只运行一次(互斥/锁/信号量)
在Django视图中,是否有一种简单的方法(最好是内置或库)允许一次最多1个线程/进程?我猜是一种信号灯。理想情况下,如果进程已经在运行,我可以让其他线程返回响应/ 它不需要处理任何分布式系统,因此本地管理适合我的用例 使用Django 1.11时,我可能没有理解您所说的“Django视图中最多一个线程/进程”的含义 最简单的方法——我不建议这样做——是运行:Python Django:使视图一次只运行一次(互斥/锁/信号量),python,django,concurrency,Python,Django,Concurrency,在Django视图中,是否有一种简单的方法(最好是内置或库)允许一次最多1个线程/进程?我猜是一种信号灯。理想情况下,如果进程已经在运行,我可以让其他线程返回响应/ 它不需要处理任何分布式系统,因此本地管理适合我的用例 使用Django 1.11时,我可能没有理解您所说的“Django视图中最多一个线程/进程”的含义 最简单的方法——我不建议这样做——是运行: /manage.py runserver--nothreading 现在,这就是一次将其锁定为单个python进程到单个请求,而不是每个
/manage.py runserver--nothreading
现在,这就是一次将其锁定为单个python进程到单个请求,而不是每个视图。。但是每一个请求
文档:您可能只需要使用一个文件或其他东西 差不多
def my_view(request):
if os.path.exists("/some/file.txt"):
return HTTPResponse(open("/some/file.txt","rb").read())
try:
open("/some/file.txt","wb") as f:
f.write("Actively running this already1")
return render_template(my_template,...)
finally:
os.remove("/some/file.txt")