• 两个工作中遇到问题


         这两天上班遇到两个问题,还花了两天时间解决,结果只需要加两行代码就能搞定的问题,现在记录下来。

         第一个,内存泄露:有个服务,供用户调用MapInfo生成地图,开始时候用的好好的,但跑两天后,就出现乱码,初步怀疑是内存泄露。开始的时候用了dispose啊,close啊什么的试了下,没有搞定,后来加了句GC.Collect() ,问题就解决了。

                    都知道C#会自动回收垃圾,所以内存泄露的情况一般不会出现,如果是访问量大的服务加上这么一句,能够让系统回收内存,效果很明显。

         第二个,多线程同时访问GDI,有个接收程序,收到更新信息后,就去更新图片里面的内容,一次更新一个还可以,更新多个的时候就提示当前对象正在被使用,开始的时候加了Lock,好了一点,但当数据量大的时候还是会出现这个问题,后来在Lock里面加了个Thread.Sleep(100),让线程睡眠0.1秒,图片资源得到释放,就可以了。感谢一个同事提供了这个方法,不然我都不知道怎么办。

         这两个问题都属于C/S开发容易出现的,以前没有遇到过,具体原因我也不是很清楚,记录下来,以后备查!

  • 相关阅读:
    ActiveMQ (一) 简介
    MSMQ .NET下的应用
    MSMQ
    RabbitMq C# .net 教程
    Rabbit MQ
    Dynamics 365—脚本
    DNS服务器地址汇总
    特殊字符 编码
    4s前置摄像头调用
    登陆前后导航栏处理 2015-12-12
  • 原文地址:https://www.cnblogs.com/dengkun/p/GC.html
Copyright © 2020-2023  润新知