总结
我想防止用户同时启动两个进程。基本上,我想更新一个sql数据库上的值,该值在一段时间后自动“重新初始化”。
描述
在这里,操作触发一些计算(在服务器上执行),结果显示在网页的图表上。所有点显示在图表上大约需要10分钟。
可能的操作和限制:我能做的是给每个用户分配一个值(比如进程)。当用户开始启动进程时,我检查进程。如果进程为0,则我允许用户启动,然后在sql数据库上将进程更新为1。在进程结束时(比如10分钟后),我将进程设置为0。
这可以正常工作,但如果用户在进程结束前(10分钟前)关闭页面,则值进程将保持为1,因此用户无法启动新进程。
总结
如何更新一段时间后自动“重新初始化”的sql数据库上的值?
1条答案
按热度按时间dbf7pr2w1#
一种选择是存储用户启动动作的时间。然后,您可以在需要新流程时使用该信息:
当用户想要启动进程时,可以运行以下查询:
这允许用户仅在没有进程正在进行或在过去10分钟内没有启动任何进程时启动进程。
如果查询不影响任何行,那么您就知道某些条件没有满足——因此基本上现在不允许用户启动新进程。