随笔分类 -  C#

上一页 1 2 3 4 5 6 7 8 ··· 17 下一页
摘要:定义 序列化是使用指定格式将活动对象或对象图转换为字节序列的过程,从而存储对象或将对象传输到内存、数据库或文件的过程。 它的主要用途是保存对象的状态,以便能够在需要时重新创建对象。 反向过程称为“反序列化”。 对象图objectGfraph, 一个对象可以引用一个集合,而这个集合引用了一组对象,这些 阅读全文
posted @ 2022-03-04 19:54 小林野夫 阅读(120) 评论(0) 推荐(0) 编辑
摘要:当我们想使用本机调试器(如CDB或WinDBG)调试.NET应用程序时,我们必须在本机调试器和托管世界之间使用“桥”,因为本机调试器本身并不理解托管代码。它是本机调试器。为了提供这个桥,CLR附带了一个调试扩展名SOS.DLL。这理解CLR的内部结构,因此允许我们执行诸如输出托管调用堆栈、转储托管堆 阅读全文
posted @ 2022-03-02 14:25 小林野夫 阅读(121) 评论(0) 推荐(0) 编辑
摘要:条件自动回收 达到指定条件后自动执行GC回收垃圾。 GC中的方法AddMemoryPressure和RemoveMemoryPressure 本机资源有时会消耗大量内存,但用于包装它的托管对象只占用很少的内存。一个典型的例子就是位图。一个位图可能占用几兆字节的本机内存,托管对象却极小,只包含一个HB 阅读全文
posted @ 2022-03-01 12:19 小林野夫 阅读(292) 评论(0) 推荐(0) 编辑
摘要:总结 1、一般要获取一个内核对象的引用,最好用SafeHandle来引用它,这个类可以帮你管理引用计数,而且用它引用内核对象,代码更健壮 2、托管中生成并引用非托管,一但非托管和托管中的引用断开(托管资源被回收),那么这个时候非托管资源还在,那么释放这个问题就有一丢丢困难。 常见的有两种机制来自动释 阅读全文
posted @ 2022-02-28 21:35 小林野夫 阅读(789) 评论(0) 推荐(0) 编辑
摘要:属性 GC.MaxGeneration:获取系统当前支持的最大代数。 方法 GC.GetTotalMemory(bool forceFullCollection) 方法 true表示该方法先做垃圾收集操作,之后才计算出受控代码分配的字节数。false表示不做垃圾收集,直接计算出受控代码分配的字节数。 阅读全文
posted @ 2022-02-28 21:35 小林野夫 阅读(4576) 评论(0) 推荐(0) 编辑
摘要:这个话题还未做详细研究,暂时用不到,只是粗略看了一下。 使用System.Runtime.InteropServices.GCHandle类来手动控制对象的生命周期 (个人感觉这里可能有一些问题...只是草稿而已..还请高手指正) 1.GCHandle.Alloc 传递一个Object和一个GCHa 阅读全文
posted @ 2022-02-28 21:22 小林野夫 阅读(1085) 评论(0) 推荐(0) 编辑
摘要:在后台垃圾回收 (GC) 中,在进行第 2 代回收的过程中,将会根据需要收集暂时代(第 0 代和第 1 代)。 后台垃圾回收是在一个或多个专用线程上执行的,具体取决于它是后台还是服务器 GC,它只适用于第 2 代回收。 默认启用后台垃圾回收。 可以在 .NET Framework 应用中使用 gcC 阅读全文
posted @ 2022-02-26 17:47 小林野夫 阅读(257) 评论(0) 推荐(0) 编辑
摘要:从 .NET 5 开始,一些新标记为已过时的 API 使用 ObsoleteAttribute 上的两个新属性。 ObsoleteAttribute.DiagnosticId 属性指示编译器使用自定义诊断 ID 产生生成警告。 通过自定义 ID 可专门、单独地取消过时警告。 对于 .NET 5+ 过 阅读全文
posted @ 2022-02-25 16:51 小林野夫 阅读(573) 评论(0) 推荐(0) 编辑
摘要:相关的类 GcSetting 类 GCLargeObjectHeapCompactionMode 枚举 GCLargeObjectHeapCompactionMode 枚举 属性的值 GCSettings.LargeObjectHeapCompactionMode 是 GCLargeObjectHe 阅读全文
posted @ 2022-02-25 16:30 小林野夫 阅读(1265) 评论(0) 推荐(0) 编辑
摘要:原文链接:https://docs.microsoft.com/zh-cn/dotnet/standard/garbage-collection/large-object-heap NET 垃圾回收器 (GC) 将对象分为小型和大型对象。 如果是大型对象,它的某些特性将比对象较小时显得更为重要。 例 阅读全文
posted @ 2022-02-24 00:12 小林野夫 阅读(637) 评论(0) 推荐(0) 编辑
摘要:GC 管理内存分配和回收 公共语言运行时的垃圾回收器为应用程序管理内存的分配和释放。 https://docs.microsoft.com/zh-cn/dotnet/standard/automatic-memory-management GC内存分配原则 暂时代:因为第 0 代和第 1 代中的对象 阅读全文
posted @ 2022-02-23 18:20 小林野夫 阅读(261) 评论(0) 推荐(0) 编辑
摘要:原文:https://docs.microsoft.com/zh-cn/dotnet/standard/automatic-memory-management 自动内存管理是公共语言运行时在托管执行过程中提供的服务之一。 公共语言运行时的垃圾回收器为应用程序管理内存的分配和释放。 对开发人员而言,这 阅读全文
posted @ 2022-02-23 17:41 小林野夫 阅读(162) 评论(0) 推荐(0) 编辑
摘要:触发垃圾回收算法的条件 触发垃圾回收的条件 当满足以下条件之一时将发生垃圾回收: 操作系统报告低内存请看(将触发第2代垃圾回收)。 这是通过 OS 的内存不足通知或主机指示的内存不足检测出来。 由托管堆上已分配的对象使用的内存超出了可接受的阈值。 随着进程的运行,此阈值会不断地进行调整。触发第0代回 阅读全文
posted @ 2022-02-23 16:48 小林野夫 阅读(756) 评论(0) 推荐(1) 编辑
摘要:.net主要有两种类型垃圾回收器,也可也说是垃圾回收器的两种工作模式。 GC的类型主要有两种; 工作模式是针对进程的,程序启动后就不能修改了。只能在配置文件.json .xml进行设置。但是可用通过GCSeting类的GCLatencyMode进行微调(也叫延迟模式)。 工作站(默认的.NET程序都 阅读全文
posted @ 2022-02-23 15:54 小林野夫 阅读(1533) 评论(0) 推荐(0) 编辑
摘要:延迟模式 lowlatency 使用环境:后台工作方式只影响第 2 代中的垃圾回收;第 0 代和第 1 代中的垃圾回收始终是非并发的,因为它们完成的速度很快。GC模式是针对进程配置的,进程运行期间不能更改,但是应用程序使用GCsetting类的GClatencyMode属性对垃圾回收进行某种程度的控 阅读全文
posted @ 2022-02-23 15:47 小林野夫 阅读(745) 评论(0) 推荐(0) 编辑
摘要:前言 自从.NET Core 3.0开始对根据自己具体的应用场景去配置GC ,让GC 发挥最好的作用。.NET 5 改动更大,而且.NET 5整体性能比.net core 3.1高20%,并且在GC这块.NET 5开放了更多配置,所以.NET 5很值得关注。 GC管理你服务的内存分配和释放,GC在运 阅读全文
posted @ 2022-02-22 18:05 小林野夫 阅读(294) 评论(0) 推荐(0) 编辑
摘要:上一篇我介绍了Hash函数 这篇我来说一下Hash函数在 HashTable中的应用。 HashTable的特性: 1、装载因子:.net core 0.72 ,java 0.75 2、冲突解决方案:Hashtable使用了闭散列法来解决冲突,java采用 开散列法解决冲突. 3、bucket(桶) 阅读全文
posted @ 2022-02-22 15:41 小林野夫 阅读(551) 评论(0) 推荐(0) 编辑
摘要:Hashtable 和 Dictionary <K, V> 类型 1):单线程程序中推荐使用 Dictionary, 有泛型优势, 且读取速度较快, 容量利用更充分. 2):Dictionary和HashTable内部实现差不多,但前者无需装箱拆箱操作,效率略高一点。 3):多线程程序中推荐使用Co 阅读全文
posted @ 2022-02-22 02:10 小林野夫 阅读(566) 评论(0) 推荐(0) 编辑
摘要:作用 在使用.NET编写的代码在debug时很容易进行排查和定位问题,一旦项目上线并出现问题的话那么只能依靠系统日志来进行问题排查和定位,但当项目复杂时,即各种方法间相互调用将导致要获取具体的出错方法或调用者将是一件不那么容易的事(因为没有PDB文件) 还好.NET提供了一系列系统组件来帮助我们获取 阅读全文
posted @ 2022-02-20 17:55 小林野夫 阅读(3994) 评论(0) 推荐(4) 编辑

上一页 1 2 3 4 5 6 7 8 ··· 17 下一页
原文链接:https://www.cnblogs.com/cdaniu/