我有一个MySQL数据库和一个在线网站(在后端运行PHP)。
如果用户A向B汇款,但B在同一时间向A汇款,则会出现竞争状况。
除了汇款之外还有其他几个更复杂的竞争条件(例如,同时为几个其他项目交易多个项目 - 每个项目对应于MySQL表格中的一行)。
在PHP中,是否存在我可以使用的全局锁定,我可以通过用户的ID来引用它?
我想要的伪代码:
lock_acquire($user_A->id);
lock_acquire($user_B->id);
//do some sensitive stuff between user A and user B
lock_release($user_A->id);
lock_release($user_B->id);
PHP中有这样的功能吗?
提前致谢!