这是第9个快照跟第8个快照的对比
[quote=引用 6 楼 wanghui0380 的回复:] 不要自己吓自己,别在XX园看到几个名词就乱用 假设北京西站每半小时发100次车,每次车可以装2千人。那么候车大厅里现在有5w人,这代表说明? 叫旅客泄漏? 正常的有进有出,不是意外的没处理,也许有堆积,有滞留,但不叫泄露。 说明叫内存泄漏-----------------只有说他的主体都走了,但他自己留下了,这才是泄漏。比如车走了,你留下了。你被泄漏了
内存只增不减,软件挂掉,需要处理
内存泄露是创建了内存而没有释放,却失去了最后的一个能操作其地址的(变量?/句柄?/指针?)反正就这东西。 现象就是该块内存已经不能被一个正常人以一种正常的方式进行访问了。而操作系统却因你没有释放掉而一直认为你在使用而坚持为你保存这个内存不允许被别的给申请走。 .net里的话,一般而言。只要你的代码全是在安全代码块里的。基本不用考虑这个问题。它GC有bug那就.....还是可能泄露
[quote=引用 18 楼 BestLifeForUs 的回复:] [quote=引用 12 楼 正怒月神 的回复:] gc是过一段时间才会回收的。 不是时时的。 你把程序开着,明天看cpu
[quote=引用 12 楼 正怒月神 的回复:] gc是过一段时间才会回收的。 不是时时的。 你把程序开着,明天看cpu
gc是过一段时间才会回收的。 不是时时的。 你把程序开着,明天看cpu
短时间的增长不算溢出,但是增长后不释放才是问题
垃圾收集回收内存机制不是我们“设想”的那个样子的,你以为应该回收了,.Net 不这么认为,至于为什么,仔细研究 .Net 内核机制吧。
你是三个界面互相调用,还是非UI线程操作三个窗口,还是UI线程操作?
严格说只要不使用非托管代码,.Net 不存在内存泄露问题,只存在使用内存不及时释放的问题。.Net 为了提升性能内部使用了大量缓存,某些不再使用的对象需要 .Net 垃圾收集器自动销毁,但是我们可以调用 GC.Collect 方法强制执行垃圾收集(不过好像意义不大)。
不要自己吓自己,别在XX园看到几个名词就乱用 假设北京西站每半小时发100次车,每次车可以装2千人。那么候车大厅里现在有5w人,这代表说明? 叫旅客泄漏? 正常的有进有出,不是意外的没处理,也许有堆积,有滞留,但不叫泄露。 说明叫内存泄漏-----------------只有说他的主体都走了,但他自己留下了,这才是泄漏。比如车走了,你留下了。你被泄漏了
110,537
社区成员
642,576
社区内容
加载中
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧