有没有大佬知道 React 这种内存泄漏可能是什么原因导致的?

154 天前
 wildnode

公司让排查性能问题,看了一天了也没啥头绪...

有没有大佬知道这种情况有可能是啥原因导致的

我初步怀疑可能是多个 hooks 之间的循环依赖问题,但是代码翻了一天也没找到啥蛛丝马迹,搜索引擎上也找不到啥有深度的排查内存泄漏的文章,都是些套话,全局变量,事件、定时器未移除啥的,心累...

https://i.imgur.com/SFGwfMX.png

2807 次点击
所在节点    React
13 条回复
douxc
154 天前
devtools 记录内存快照,然后根据数据分析;猜的话太难了
asdjgfr
153 天前
NessajCN
153 天前
等我开水晶球给你算一卦
chenliangngng
153 天前
按照我以前的经验,可以用二分法定位到有问题的代码位置
stew5566
153 天前
看起来是深层级的数据引起的多层调用,有树结构的 observe ?
CatchXS
153 天前
用二分法查一下吧,感觉像是某个变量一直没有释放掉。
wangcheng
153 天前
上点代码呗
particlec
153 天前
有点像对象循环引用
3uncle
153 天前
memoizedState 没初始化吧?
lovelylain
153 天前
回退历史代码,看看哪次修改引入的,再分析改动
tcper
153 天前
导致内存泄露归根到底就是这几个原因:全局变量,事件、定时器未移除
只是你代码里哪里全局变量,哪里的事件未移除需要你自己找
txzh007
153 天前
内存快照看一下是什么内容占用的,凭感觉八成是字符串
duhbbx1119
153 天前
最近在排查使用 vue2 写的业务代码的问题,同事教我排查的,操作前快照一次,操作后快照一次,比较这两次操作之间的 哪些对象没释放

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1058279

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX