我自己便有整个星空 2024-09-15 08:05 采纳率: 0%
浏览 11
已结题

资源泄露软件闪退怎么解决?


_ public static bool ReadDataDouble(string section, string key, out double Value)
        {
            Value = 0;

                try
                {
                    string fullpath = BackSlash(comDataSV.strpath) + comDataSV.destFn;

                    if (File.Exists(fullpath))
                    {
                        StringBuilder sb = new StringBuilder(1024);
                        GetPrivateProfileString(section, key, null, sb, 1024, fullpath);
                        Value = Convert.ToDouble(sb.ToString());
                    }
                }
                catch (Exception)
                {
                    return false;
                }
            return true;
        }     
_

Windows日志显示System.OutOfMemory;实在没有其他怀疑点也不知道怎么去排查资源泄露;因为之前是好的,加了个持续读取共享文件的数据和SECS联网通讯后就总是生产8-15小时左右就会闪退

以上代码while循环 500ms一读,一次调用近1000个ReadDataDouble函数; 这个StringBuilder sb,用主动地去Clear()/null

  • 写回答

30条回答 默认 最新

  • 阿里嘎多学长 2024-09-15 08:05
    关注
    获得0.15元问题酬金

    AIGC生成:


    资源泄露软件闪退怎么解决?

    你好,用户!我是阿里嘎多学长,很高兴帮助你解决这个问题。

    根据你提供的信息,问题是资源泄露软件闪退,可能是C#中的一种问题。下面是一些可能的解决方法:

    1. 检查资源泄露:使用Visual Studio的性能分析工具或使用第三方工具,如dotMemory或CLR Profiler,来检查资源泄露的原因。
    2. 检查GC的配置:确保GC的配置正确,例如堆大小、generation size、gc server等。
    3. 检查对象引用:检查对象引用是否正确,避免对象之间的循环引用。
    4. 检查事件处理:检查事件处理是否正确,避免事件处理中出现资源泄露。
    5. 检查线程安全:检查线程安全,避免多线程访问共享资源时出现资源泄露。
    6. 检查COM对象:检查COM对象是否正确释放,避免COM对象泄露。
    7. 检查文件句柄:检查文件句柄是否正确释放,避免文件句柄泄露。
    8. 检查网络连接:检查网络连接是否正确释放,避免网络连接泄露。

    这些方法可能能够帮助你解决资源泄露软件闪退的问题。如果你需要更多帮助,请提供更多的信息和代码,阿里嘎多学长将尽力帮助你。

    评论

报告相同问题?

问题事件

  • 系统已结题 9月23日
  • 创建了问题 9月15日

悬赏问题

  • ¥15 微信小程序 用oss下载 aliyun-oss-sdk-6.18.0.min client报错
  • ¥15 ArcGIS批量裁剪
  • ¥15 labview程序设计
  • ¥15 为什么在配置Linux系统的时候执行脚本总是出现E: Failed to fetch http:L/cn.archive.ubuntu.com
  • ¥15 Cloudreve保存用户组存储空间大小时报错
  • ¥15 伪标签为什么不能作为弱监督语义分割的结果?
  • ¥15 编一个判断一个区间范围内的数字的个位数的立方和是否等于其本身的程序在输入第1组数据后卡住了(语言-c语言)
  • ¥15 游戏盾如何溯源服务器真实ip?
  • ¥15 Mac版Fiddler Everywhere4.0.1提示强制更新
  • ¥15 android 集成sentry上报时报错。