位置: 编程技术 - 正文

PHP线程的内存回收问题(php cli 多线程)

编辑:rootadmin

推荐整理分享PHP线程的内存回收问题(php cli 多线程),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:php多线程,php7多线程,php多线程curl,php cli 多线程,php 线程 进程,php多线程,php线程池,php 线程间通信,内容如对您有帮助,希望把文章链接给更多的朋友!

当一个PHP线程结束时,当前占用的所有内存空间都会被销毁。那么如果这个线程不结束,怎么回收内存呢?

refcount:引用技术器,可以理解为指向该个容器的指针个数吧。

is_ref:是否被引用(只可能是0或者1)

赋值的流程:

引用的流程:

那如果多次引用,unset掉一个,is_ref是否会被置为零,那样bug不就出现了么?变量容器还是引用啊。那么我们来看看:

unset和赋值null都能回收变量么?很多人都错认为,这两个都能回收变量空间,其实错了,null只是把变量占用的空间变小了,从回收上来说,该容器依然存在。

总结

1. 垃圾回收的时机

PHP线程的内存回收问题(php cli 多线程)

PHP中,引用计数为0,则内存立刻释放。也就是说,不存在环状引用的变量,离开变量的作用域,内存被立刻释放。环状引用检测则是在满足一定条件下触发,所以在上面的例子中,会看到使用的内存有大幅度的波动。也可以通过 gc_collect_cycles 函数来主动进行环状引用检测。

2. &符号的影响

显式引用一个变量,会增加该内存的引用计数:

$a = "something";$b = &$a;此时unset($a), 但是仍有$b指向该内存区域的引用,内存不会释放。

3. unset函数的影响

unset只是断开一个变量到一块内存区域的连接,同时将该内存区域的引用计数-1;在上面的例子中,循环体内部,$a=new A(); unset($a);并不会将$a的引用计数减到零;

4. = null 操作的影响;

$a = null 是直接将$a 指向的数据结构置空,同时将其引用计数归0。

5. 脚本执行结束的影响

脚本执行结束,该脚本中使用的所有内存都会被释放,不论是否有引用环。

php实现批量删除挂马文件及批量替换页面内容完整实例 本文实例讲述了php实现批量删除挂马文件及批量替换页面内容的方法。分享给大家供大家参考,具体如下:php#functionality:本程序可以扫描指定目录的所

PHP编程之设置apache虚拟目录 apache虚拟目录设置方法分享,供大家参考,具体内容如下1.开启虚拟目录配置文件httpd-vhosts.conf文件路径:wampbinapacheapache2.4.9confextrahttpd-vhosts.conf将

php常用字符串输出方法分析(echo,print,printf及sprintf) 原创 本文讲述了php常用字符串输出方法。分享给大家共大家参考,具体如下:1.echo用法:可用echo直接输出,也可以用echo()输出,无返回值$string="b加粗显示文字/

标签: php cli 多线程

本文链接地址:https://www.jiuchutong.com/biancheng/297174.html 转载请保留说明!

上一篇:php实现xml与json之间的相互转换功能实例(php xml转字符串)

下一篇:php实现批量删除挂马文件及批量替换页面内容完整实例(php批量删除文件)

  • 购买车辆保险的现金流
  • 工会经费的会计核算方法
  • 其他应付款贷方负数怎么调整
  • 汽修厂开普票货款怎么开
  • 一个人可以两家以上公司发放工资么
  • 员工充值饭卡的收入如何做账
  • 员工旅游费用可以税前扣除吗?
  • 企业自建房屋卖给职工怎么做账务处理
  • 免税即征即退先征后退
  • 工程项目劳务分包合同范本
  • 补交以前年度的社保账务处理
  • 营业账簿印花税包括什么
  • 计算房产税时容积率怎么算
  • 企业所得说季报是季报填还是年底填?
  • 增值税发票地址开错了有影响吗
  • 小型微利企业所得税优惠政策2022
  • 医院行业类别怎样填写
  • 对公账户的利息收入如何入账
  • 未开票的增值税发票能验旧吗
  • 结存材料实际成本计算公式例题
  • 费用化和资本化对利润的影响
  • 以前年度损益调整在利润表中怎么填
  • 纳税人月销售额怎么算
  • 推广费属于什么科目
  • 电脑上不了网怎么安装网卡驱动
  • 备用金的会计分类
  • ptssvc.exe - ptssvc是什么进程 有什么用
  • 发票未到先付款的账务处理
  • 甲供材料增值税
  • 开具增值税发票哪些情形不用交税?
  • php框架选择2021
  • php定义字符串的三种方式
  • 销售房产收取预算费用
  • 自产自销农产品增值税免税政策
  • 优先股股息必须支付吗
  • 【MongoDB for Java】Java操作MongoDB数据库
  • 公司购买绿植入什么科目
  • 农民工工资专户管理暂行办法
  • 管理费用主要核算内容包括什么?
  • 更正申报失败,维持原申报?
  • 应交税费应交增值税明细账图
  • 什么是叫资产负债表项目
  • 即征即退增值税需要缴纳所得税吗
  • 长期待摊费用待抵扣税金
  • 外经证适用范围
  • 递延收益金额怎么算
  • 优惠券会计分录怎么做
  • 城建税多交了怎么办
  • 银行扣款后又退回怎么办
  • 一般什么是差旅费呢
  • 单位内部部门之间人员调整
  • 长期股权投资的初始计量
  • 包工包料工程如何计税
  • 会计做账过程中遇到的问题
  • 工业企业增值税负率一般控制在多少
  • 如何在sql server表中添加数据表格为什么没有显示
  • mysql全部语法
  • mysql中json格式是多少长度
  • 在数据库中对数据表进行生成的是
  • win2008r
  • iis w3svc
  • Windows Server 2008作为打印服务器排错
  • mac 显示器
  • centos7如何扩展根分区空间
  • u极速u盘装系统
  • dlg是什么意思中文
  • Ubuntu如何安装软件
  • centos 6.0
  • 工商网银登陆
  • win10查看电脑配置显卡
  • 什么是四个菜
  • win10添加功能在哪
  • win7怎么设置工作组共享
  • jquery 元素
  • 1.常用
  • python打包可执行pyx
  • python文件与异常答案
  • 装饰装修公司需要什么
  • 地摊经济火了,月薪8000元
  • 从日本带化妆品回国会被扣吗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设