刷新
【BotR】CLR堆栈遍历(Stackwalking in CLR)

博主头像 前言 在上一篇文章CLR类型系统概述里提到,当运行时挂起时, 垃圾回收会执行堆栈遍历器(stack walker)去拿到堆栈上值类型的大小和堆栈根。这里我们来翻译BotR里一篇专门介绍Stackwalking的文章,希望能加深理解。 顺便说一句,StackWalker在中文里似乎还没有统一的翻译,J ...

【BotR】CLR类型系统

博主头像 .NET运行时之书(Book of the Runtime,简称BotR)是一系列描述.NET运行时的文档,2007年左右在微软内部创建,最初目的是为了帮助其新员工快速上手.NET运行时;随着.NET开源,BotR也被公开了出来,如果想深入理解CLR,这系列文章不可错过。 BotR系列目录: [1] ...

C# String和StringBuilder的区别及性能详解

博主头像 String在C#中其实是不可变的,每次操作字符串变量增加或减少时,都会重新分配内存。试想一下,如果创建一个循环10000次的字符串加减操作,每次循环都将一个字符连接到字符串,这样内存中就会有10000个字符串,每个字符串仅仅与前一个字符串相伴只是有一个字符不同,性能影响是很大的。这个时候我们可以使 ...

使用 Win2D 实现融合效果

博主头像 1. 融合效果 在 CSS 中有一种实现融合效果的技巧,使用模糊滤镜(blur)叠加对比度滤镜(contrast)使两个接近的元素看上去“粘”在一起,如下图所示: 博客园的 ChokCoco 就用这个技巧实现了很多不同的玩法并写了很多文章,例如这篇: 你所不知道的 CSS 滤镜技巧与细节 我一直对这 ...

【BotR】CLR类型加载器设计

博主头像 .NET运行时之书(Book of the Runtime,简称BotR)是一系列描述.NET运行时的文档,2007年左右在微软内部创建,最初目的是为了帮助其新员工快速上手.NET运行时;随着.NET开源,BotR也被公开了出来,如果想深入理解CLR,这系列文章不可错过。 BotR系列目录: [1] ...

C#异步编程

受众 .Net c#开发人员 概念 免责声明:计算机科学很多概念都没有类似数学一样严谨的定义,以下概念为个人理解 程序(Program) 静态模板 进程(Process) 程序的实例,一个程序可以有多个进程 线程(Thread) 一个进程可以有多个线程,CPU调度分配最小单位 协程(Coroutin ...

.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试

博主头像 重要补充说明(放在最前面) 博客中EFCore测试结果比其它ORM快的原因 涉及博客《ORM增删改查并发性能测试》《ORM增删改查并发性能测试2》《.NET 6 EFCore WebApi 使用 JMeter 进行吞吐量测试》 测试代码中EFCore的多字段排序写法不正确,导致生成的SQL不正确,S ...

如何编写一个函数来查找字符串数组中的最长公共前缀,说明:所有输入只包含小写字母a~z ,如果不存在公共前缀,返回空字符串

博主头像 1,先新建一个类,因为我们肯定要在类里面写,在main方法里调用(为求好理解这里我用的默认名,请勿纠结) ,2,首先我们要想到函数中的字符串最好是要用户自行输入的,那么我们可以通过main方法里的Console.WriteLine获取到用户输入的三个字符串,依次赋值给参数,然后调用我们在类里写好的方 ...

泛型的约束不止一面

博主头像 1.介绍 泛型中的约束,其实就是针对类型参数的约束,限制类型参数的选择只能在某个特定范围内。其中的体现包括:限制类型参数必须是一个结构、限制类型参数必须是某个具体类型、限制类型参数必须派生自某个基类等等。在默认情况下,定义的泛型没有任何约束,这意味着在调用泛型时,可以使用任何数据类型作为类型参数。如 ...

Fast.Framework ORM 试用

博主头像 简介 Fast.Framework 是一款基于 .NET 6 封装的轻量级ORM框架,支持多种数据库(SQL Server、Oracle、MySQL、PostgreSQL、SQLite)。 优点 性能好 使用简单 如何使用 1. 安装 NuGet搜索Fast.Framework并安装最新版本 2. ...

Bootstrap Blazor 开源UI库介绍-Table 虚拟滚动行

博主头像 今天我们来介绍一下 Bootstrap Blazor 中 Table 组件的虚拟滚动行,什么是虚拟滚动呢,我查到的解释是:只渲染可视区域的列表项,非可见区域的 完全不渲染,在滚动条滚动时动态更新列表项。 然后很明显,在实际应用中不可能实现“非可见区域的 完全不渲染”,这样的体验效果太差了,下拉直接空 ...

记一次 .NET 某打印服务 非托管内存泄漏分析

博主头像 一:背景 1. 讲故事 前段时间有位朋友在微信上找到我,说他的程序出现了内存泄漏,能不能帮他看一下,这个问题还是比较经典的,加上好久没上非托管方面的东西了,这篇就和大家分享一下,话不多说,上 WinDbg 说话。 二:WinDbg 分析 1. 到底是哪里的泄漏 好的开始就是成功的一半,否则就南辕北辙 ...

123···21>