首页 > 系统相关 >文件监听,内存溢出了

文件监听,内存溢出了

时间:2023-02-21 14:23:51浏览次数:31  
标签:文件 调用 初始化 线程 内存 监听 溢出

为什么做了文件监听功能,内存溢出了?

忙于做项目,现在简单贴一些代码和分析原因。

项目里面有一个配置文件,做了监听,这个是放数据的。红线部分是文件修改

 

这个是文件监听的方法。文件修改又调用了初始化的方法,初始化里面最下面又调用了上面的方法。

 

 

这个 是初始化的方法,下面又调用了上面文件监听的方法。循环了。并且初始化方法是同步的。上面监听是3s

 

 

发现问题的过程也是比较难,开始发现启动了项目。过半个小时左右电脑cpu 100% 卡死了

总结一下。这个地方文件监听里创建了线程。文件修改又调用了一个文件监听器。循环创建了多个线程。而且后创建的线程都是阻塞的。线程越来越多。内存溢出了。

如何确定问题所在。项目启动,启动arthas。调用thread -n 10一直查看线程信息。发现线程数量很多。线程栈信息里面看到代码位置,发现有一个方法一直在调用配置文件,1s左右修改一次。

解决:如何解决这个问题呢。代码应该怎么修改?

标签:文件,调用,初始化,线程,内存,监听,溢出
From: https://www.cnblogs.com/liran123/p/17140874.html

相关文章

  • 内存泄漏
    避免内存泄露的几种方式记数法:使用new或者malloc时,让该数+1,delete或free时,该数-1,程序执行完打印这个计数,如果不为0则表示存在内存泄露一定要将基类的析构函数声明为虚函......
  • 用百分比显示Windows内存使用率
    在之前的篇幅​​简单聊聊AzureVM的内存指标​​里已经提过了​,Windows并没提供内置的方式来让你直接通过百分比的形式展示内存使用率,这样对于告警的设置来说就不太灵活了......
  • vue中watch监听计算总价总数量
    应用场景,当购物车添加了一个商品时,购物车的总数和其总价格需重新计算这里有4个商品,现在对任意一个进行添加或删除总价格和总数量都要进行变化1.定义变量dataList:[......
  • 缓冲区溢出攻击是什么意思?防御措施有哪些?
    缓冲区溢出攻击是利用缓冲区溢出漏洞所进行的攻击行为,是一种非常普遍、非常危险的漏洞,也是最常见的网络攻击手段,该攻击虽然简单但危害性极大。那么缓冲区溢出攻击是什么......
  • 直播平台开发,css溢出之后滚动条样式修改
    直播平台开发,css溢出之后滚动条样式修改  //溢出的class .five-content{  display:flex;  overflow:auto;  height:437px; } //  滚动条样......
  • Rpc-实现Client对ZooKeeper的服务监听
    1、前言在上一篇文章中,完成了ZooKeeper注册中心,添加了一个简单的本地缓存但是,存在一些问题:当本地缓存OK,ZooKeeper对应服务有新的实例时,本地缓存不会自动更新当ZooKeep......
  • ESXi 主机补丁升级(OpenSLP 堆溢出漏洞CVE-2021-21974)
    ESXi主机补丁升级(OpenSLP堆溢出漏洞CVE-2021-21974)一、环境说明漏洞名称:VMwareESXiOpenSLP堆溢出漏洞CVE-2021-21974漏洞危害:组件名称:VMwareESXi影响范围:VMware......
  • 第四章 熟练使用有棱有角的内存
        虽然内存IC包括DRAM、SRAM、ROM等多种形式,但从外部来看,其基本机制都是一样的。    内存IC中有电源、地址信号、数据信号、控制信号等用于输入输出的......
  • 第十二章 动态内存
    第十二章动态内存对象的生命周期:全局对象在程序启动时分配,结束时销毁。局部对象在进入程序块时创建,离开块时销毁。局部static对象在第一次使用前分配,在程序结束时......
  • 内存计数基础原理
    有new、alloc、copy(计数器加一),就得release(计数器减一)////Person.h//a1////Createdbymahongminon14-4-21.//Copyright(c)2014年mahongmin.Allright......