shell - linux kill php进程,对PHP的生命周期产生怎样的影响?

查看:112
本文介绍了shell - linux kill php进程,对PHP的生命周期产生怎样的影响?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

如果我kill PHP的进程

PHP的进程是否会执行 __destruct()析构函数?

对PHP的生命周期起到什么影响?

我觉得linux KILL的话,已经脱离了PHP的掌控了,跟PHP生命周期已经没有关系了,是这样理解么?
如果这样,那PHP进程占用的内存是谁来维护?

另:如果我的需求是:通知PHP进程结束(比如PHP当前是个死循环),让PHP自己完成生命周期,要怎么处理?

解决方案

类似在windows下强制结束进程,会提示你丢失有关数据,因为进程在不知情的情况下被突然结束,不能有效处理善后。

kill 进程已经不在PHP的管理范围了,这个是系统层面的了。

所以析构函数也不会执行,因为执行的前提是PHP主动触发,现在PHP都没了。

kill前是根据配置申请内存,php自己维护、回收。kill之后的内存释放当然是属于linux维护了,即使剩余僵尸进程,也是系统管理。

通知PHP进程结束,可以试试信号,fpm自带信号处理,restart、stop等。

这篇关于shell - linux kill php进程,对PHP的生命周期产生怎样的影响?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆