V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zjsxwc  ›  全部回复第 91 页 / 共 219 页
回复总数  4373
1 ... 87  88  89  90  91  92  93  94  95  96 ... 219  
2020-08-14 08:40:24 +08:00
回复了 JJstyle 创建的主题 PHP PHP 中如何定位内存泄露的代码所在行呢?
php 碰到内存“泄露”问题,有几个方面
1. “全局变量” 或者 “常驻依赖注入容器对象” 的膨胀导致内存不够,比如 orm 中 EntityManager 没有及时 clear 追踪的不再被使用的数据库实体对象。
2. 代码逻辑“死循环” 导致内存不够。
3. 使用了存在内存泄露 bug 的 c/c++拓展。


当接楼上我的回答,当 php 内存达到设置值时,比如 32M 时会自动触发垃圾回收,所以没有必要手动 gc_collect_cycles();


php 7.3 之后有个 gc_status();可以看 gc 状态


```
zjsxwc@zjsxwc-PC:~$ cat 2.php
<?php


function fun1()
{
$a = ['hello'];
$a[] = &$a;
}

while(true) {
var_dump(gc_status());
fun1();
var_dump(gc_status());
gc_collect_cycles();
echo memory_get_usage() . "\n";
sleep(1);
}
zjsxwc@zjsxwc-PC:~$ '/home/zjsxwc/php74/bin/php' 2.php
array(4) {
["runs"]=>
int(0)
["collected"]=>
int(0)
["threshold"]=>
int(10001)
["roots"]=>
int(0)
}
array(4) {
["runs"]=>
int(0)
["collected"]=>
int(0)
["threshold"]=>
int(10001)
["roots"]=>
int(1)
}
365496
array(4) {
["runs"]=>
int(1)
["collected"]=>
int(1)
["threshold"]=>
int(10001)
["roots"]=>
int(0)
}
array(4) {
["runs"]=>
int(1)
["collected"]=>
int(1)
["threshold"]=>
int(10001)
["roots"]=>
int(1)
}
365496

```
2020-08-14 08:23:09 +08:00
回复了 JJstyle 创建的主题 PHP PHP 中如何定位内存泄露的代码所在行呢?
看来只能手动 gc 了

1 <?php
2
3
4 function fun1()
5 {
6 $a = ['hello'];
7 $a[] = &$a;
8 }
9
10 while(true) {
11 fun1();
12 gc_collect_cycles();
13 echo memory_get_usage() . "\n";
14 sleep(1);
15 }
首先需要了解实习生会什么,会到什么程度,然后根据情况(比如实习生空余时间,学习能力,工作积极性等等)安排任务,就是这么简单。
2020-08-13 08:34:48 +08:00
回复了 YLyu 创建的主题 程序员 Rust 要熬出头了?
一直只有 nightly 版能用,
涉及三方 cargo 库编译都是无脑切 nightly 编译,不然很大几率会编译不了,到最后我 stable 版就是个摆设,
2020-08-12 12:16:57 +08:00
回复了 fujrkx 创建的主题 Linux 有什么对 Linux 友好的笔记本或台式机吗?
amd yes!
午餐吃炸鸡,别吃饭。

下午 1 点半开始和咖啡或者茶。
2020-08-06 20:52:34 +08:00
回复了 yangbai 创建的主题 程序员 程序员副业有什么选择和建议?
副业和创业一样,
跑美团,开滴滴不算副业,只能算是解决一时困境,
副业也需要有创业本金,要有目标行业,目标客户,要有渠道资源,投机倒把是副业本质。
2020-08-03 13:32:33 +08:00
回复了 lixiaojian 创建的主题 PHP PHP 有开源比较成熟的 saas 解决方案不?
PHP 有开源比较成熟的 “软件服务” 解决方案不?

滑稽
2020-08-03 13:14:02 +08:00
回复了 Ansen 创建的主题 Go 编程语言 Go 中为啥喜欢这样创建变量
指针空值问题,
总要有个初始化的构造函数吧
这个框架看来只能用来写 json 的 api 接口,浏览器网页相关的还是算了
2020-08-01 18:00:01 +08:00
回复了 s609926202 创建的主题 PHP PHP 如何实现非阻塞且延迟执行?
beanstalk 这种队列中间件呗
2020-08-01 13:47:41 +08:00
回复了 he110comex 创建的主题 程序员 电焊工想搞个符合自己要求的工具软件还有机会吗?
买个群晖丢家里,用群晖 DS Note 记你的笔记
2020-07-27 14:25:37 +08:00
回复了 KalaSearch 创建的主题 分享创造 无码和低码会抢走程序员的工作吗?
我只相信 “逻辑守恒”
2020-07-27 09:00:49 +08:00
回复了 zhuyongqi9 创建的主题 Java 学习编程应该看中文还是英文资源?
英文啊,rust 中文教程都不怎么样,
`Exclusive reference`被翻译成`可变引用`,`Shared reference`被直接翻译成`引用`,
虽然都可以说,但没有英文原文好。
1 ... 87  88  89  90  91  92  93  94  95  96 ... 219  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3580 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 47ms · UTC 00:48 · PVG 08:48 · LAX 16:48 · JFK 19:48
Developed with CodeLauncher
♥ Do have faith in what you're doing.