PHP先后请求调用一个方法,如果过第一次请求处理没结束,第二次又调用会有什么影响?

后台定时任务轮询调用一个方法,每秒执行一次,主要是从数据库取出几十条数据循环进行处理,处理结束整个循环大概要3秒钟,每秒轮询的话,第一次还没处理完,紧接着调用会有什么影响吗?它是怎样的一个执行流程,是会被阻塞吗?还是我需要使用文件锁,当循环执行完成再释放

缥缈止盈
浏览 1286回答 2
2回答

慕森王

第一次没执行完,再次调用会再执行一次,因为不同的进程再处理,这肯定不是你想要的结果,所以你需要自行处理掉,文件锁或者redis锁都行。

慕勒3428872

这个问题可以思考下,当多用户同时点赞该文章的时候是怎么实现的?因为操作的流程一般是取值,修改,存值。如果它们都是同时操作,不考虑误差,不做其它处理,那么大家所操作的流程都是 获取 0 ,修改 0 + 1 ,保存 1.
打开App,查看更多内容
随时随地看视频慕课网APP