application.lock可以锁住数据库吗?
application.lock可以锁住数据库吗?
我的目的是: 防止多个用户同时 往数据库表添加记录,产生订单的ID号。
如果同时添加,就不好办了。
尝试用 application.lock 有用吗?
------解决方案--------------------锁定调用数据库的那一段就应该可以,理论上是可以的,那样的话,特定时间内只能有一个要操作数据库
------解决方案--------------------应该是用数据库本身的锁机制,不必要用application.lock
------解决方案--------------------入口问题
如果你的数据库操作 只有一个入口 那么可以在这个入口的很多地方加锁
只要保证 其中一个环节是 需要 锁竞争的就可以了
如果有多个入口
也就是 n个地方 会对同一个 数据库的表进行操作(但是希望是原子的操作) 那么最简单是在数据库层面对整个表添加锁