最近正在移植tp6的项目至webman,看到内存泄漏,但是大佬说了,极少情况下.是有非常苛刻的条件才会触发. 由于没接触过webman,之前tp6项目里面模型层大量(基本全部)都是使用的静态方式,不知道会不会出现内存泄漏的问题. 这个是中间件 只要牵扯搭配模型层的,都是使用的这样的方式调用的...不知道会不会出现内存泄漏. 有一点应该是可以肯定的.模型层里面,没有定义静态变量.
不会的,并不是说静态类跟方法不能用了,正常使用完全没问题的.有问题的是类似下面这种,往里面数组插入了数据,那就必须要在某个地方对它调用清除.
public static function create($data,$field,$op,$val){ if ($data !== '' && $data !== false){ self::$where[] = [ $field,$op,$val ]; } }
内存泄漏发生在使用了无限膨胀的静态数组的情况。 和静态类,静态方法没有关系。
不会的,并不是说静态类跟方法不能用了,正常使用完全没问题的.有问题的是类似下面这种,往里面数组插入了数据,那就必须要在某个地方对它调用清除.
内存泄漏发生在使用了无限膨胀的静态数组的情况。
和静态类,静态方法没有关系。