请问高并发访问workerman时,为了确保数据准确,需要给常驻内存的变量加锁么?

xxfxxfxxfxxf

请问高并发访问workerman时,为了确保数据准确,需要给常驻内存的变量加锁么?
伪代码如下:
if(!isset(self::$array[$data])){
self::$array[$data]=1;
}
高并发下,会不会出现$array[$data]被同时判断,发现都不存在,结果if内被执行多次呢?

2690 2 0
2个回答

walkor

常驻内存的变量不需要加锁

  • xxfxxfxxfxxf 2019-11-06

    谢谢大佬,也就是说在同个进程内,访问同一个变量总有先后顺序,没有真正的并发哈

  • walkor 2019-11-06

a392223903

变量肯定不需要啊

年代过于久远,无法发表回答
🔝