一:背景1. 讲故事2. windbg验证一下二:对GC代机制的理解1. CLR堆模型2. 对临时内存段的解释<1> 为啥小对象堆中有一个临时内存段?<2> 临时内存段大小是多少?3. 代机制简介三:代机制原理的代码演示1. 探究 gen0 上的student1 和 studnet22. 探究 student1 被消灭,student2进入gen13. 探究student2 送上了 gen2四:总结一:背景1. 讲故事我们有一家top级的淘品牌店铺,为了后续的加速计算,在
!heap!heap 扩展显示堆使用信息,控制堆管理器中的断点,检测泄露的堆块,搜索堆块或者显示页堆(page heap)信息。语法Windows NT 4.0的语法!heap [HeapOptions] [ValidationOptions] [Heap] !heap -b [{alloc|realloc|free} [Tag]] [Heap | BreakAddress]
经过两个多小时的google和试探,终于搞定了一段代码.通过这个代码可以控制当前线程的CPU使用量.下面是代码:using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Runtime.InteropServices;
using 
sender as ObservableCollection<string> 为啥为null ? 查看下sender的传入值,确实是有内容的。查看下sender的定义如下,确实是一个ObservableCollection<string>类型。用即时窗口看下:sender is List<string>
false
sender is ObservableCollection<string>
尽管在.NET framework下我们并不需要担心内存管理和垃圾回收(GarbageCollection),但是我们还是应该了解它们,以优化我们的应用程序。同时,还需要具备一些基础的内存管理工作机制的知识,这样能够有助于解释我们日常程序编写中的变量的行为。在本文中我将讲解栈和堆的基本知识,变量类型以及为什么一些变量能够按照它们自己的方式工作。在.NET framework环境下,当我们的代码执行时,内存中有两个地方用来存储这些代码。假如你不曾了解,那就让我来给你介绍栈(Stack)和堆(Hea
(一)一些相关指令的测试【线程池耗尽】!threadpool 能看到完成端口,线程池工作线程和timer回调各占线程池的情况。0:000> !threadpool
CPU utilization: 6%
Worker Thread: Total: 8 Running: 4 Idle: 4 MaxLimit: 32767 MinLimit: 12
勇哥注:最近开发的软件遇到一些问题,主要是爆cpu时间,这样的后果是软件运行时间一长就会越跑越慢,最终UI失去响应。用vs来排除,目前只知道对可疑代码进行失能,再配合任务管理器观察 :cpu使用率, cpu时间,线程,句柄等参数来判断可疑代码是不是有问题。如果搜索一下网络,貌似这个问题大部分答案只是对线程做sleep,没啥子可用的信息。因此是时候涨点知识了,我把学习方向放在用WinDbg调试用户模式.net程序上。(一)什么是dump文件(1)什么是dump文件从软件开发的角度上,dump文件就
勇哥注:最近开发的软件遇到一些问题,主要是爆cpu时间,这样的后果是软件运行时间一长就会越跑越慢,最终UI失去响应。用vs来排除,目前只知道对可疑代码进行失能,再配合任务管理器观察 :cpu使用率, cpu时间,线程,句柄等参数来判断可疑代码是不是有问题。如果搜索一下网络,貌似这个问题大部分答案只是对线程做sleep,没啥子可用的信息。因此是时候涨点知识了,我把学习方向放在用WinDbg调试用户模式.net程序上。系列贴子目录:WinDbg 入门三:调试DumpWinDbg 入门二:基本指令介绍
勇哥注:微软又整出一堆新概念,咱们只能了解一下扫下盲,就学习精力而言,年轻人才是未来。。。.当今 net 生态系统如下: 从上面图中我们可以看到.net 主要分为三个部分 .net FrameWork,.net Core ,XamarinXAMARIN 主要用来构建APP的(包括IOS,Android Windows)主要用的是C#语言The .NET Framework 这个是我们现在经常用的,用这个可以创建windows应用程序还有web app
本文转载自k_set原创内容点击打开链接WinForm加载多个自定义控件时,会出现很严重的闪烁问题,很卡,一块一块的加载(像打开网页时,网络很卡的那种感觉)简直没法忍受。在网上搜索了好久,网上大部分的方法是一下4种,但是都不能有效的解决问题。 1.将DoubleBuffered 设置 true,用双缓存处理Form界面内容加载,可以提高页面显示质量。或者SetStyle(ControlStyles.UserPaint | ControlStyles.AllPaintingI