用户打开时“锁定”资源,完成时解锁

2024-04-19 13:32:53 发布

您现在位置:Python中文网/ 问答频道 /正文

我使用的是flask版本0.10.1和python版本2.7.6

我有一个管理一些订单的web应用程序。 假设我们有3个订单:

order 1
order 2
order 3

有一个景色

@main.route(/prder/<int:orderid>, methods=['GET'])
edit(orderid):
   pass

视图只能由注册用户访问,并且我有一个用户对象。 假设我们有用户A和用户B

当A编辑订单1时,用户B不应编辑此订单

我需要一个机制,即“锁定”的顺序和顺序是不可访问的编辑时,用户a的工作顺序。你知道吗

当用户完成编辑时,需要撤销此“锁”*

  • 存在这样一种情况:用户A关闭浏览器或停止处理订单。那么我不希望订单永远被“锁定”。你知道吗

你知道实现上述功能的最佳方法是什么吗?你知道吗


Tags: 用户订单版本web应用程序编辑flask顺序
1条回答
网友
1楼 · 发布于 2024-04-19 13:32:53

我从未使用过flask,但听起来您需要一个mutex(例如多线程here)。当B试图编辑A已经在编辑的东西时,行为应该是什么是另一回事。你知道吗

至于不被永远锁定,需要更多的信息。你所说的“停止订单工作”是指闲置了一段时间,还是关闭了一些窗口?我很确定try...finally构造会在try块中的内容被提前终止的情况下解锁互斥锁,但我没有足够的经验来肯定地告诉您。你知道吗

相关问题 更多 >