随笔分类 - C#
CSharp
摘要:分析基于ASP.NET Core Kernel的gRPC服务在不同.NET版本的不同部署方式的不同线程池下的性能表现 使用默认的 gRPC 项目模板创建,垃圾回收器类型为 ServerGC(Server garbage collection)。 使用 ghz 工具在不同的请求总数、连接数、并发数的参
阅读全文
摘要:
随着 .NET 版本的演进,从 .NET Standard 2.0 版本开始,支持 Vector<T> 类型。 从 .NET 8.0 版本开始,大量在 Runtime 提供的各个组件中运用向量计算,特别是 Linq。 Vector 类型:表示指定数值类型(适用于并行算法的低级别优化)的单个向量。
阅读全文

摘要:
相信很多.NETer看了标题,都会忍不住好奇,点进来看看,并且顺便准备要喷作者! 这里,首先要申明一下,作者本人也非常喜欢Linq,也在各个项目中常用Linq。 我爱Linq,Linq优雅万岁!!!(PS:顺便吐槽一下,隔壁Java从8.0版本推出的Streams API,抄了个四不像,一点都不优雅
阅读全文

摘要:今天在技术群里,石头哥向大家提了个问题:"如何在一个以System身份运行的.NET程序(Windows Services)中,以其它活动的用户身份启动可交互式进程(桌面应用程序、控制台程序、等带有UI和交互式体验的程序)"? 我以前有过类似的需求,是在GitLab流水线中运行带有UI的自动化测试程
阅读全文
摘要:一般我们构建传统的NuGet包,都是打包和分发dll程序集文件。 至于打包和分发C#源代码文件的做法,比较少见。 那么这种打包源代码文件的做法,有什么优点和缺点呢? 优点: 方便阅读源代码。 方便断点调试。 减少 Assembly 程序集模块加载个数。 更利于发布期间的剪裁(PublishTrimm
阅读全文
摘要:除了"在操作系统中修改时区信息,然后重启.NET应用程序,使其生效"之外。如何在不修改操作系统时区的前提下,修改.NET中的默认时区呢? 这是一位 同学兼同事 于5月21日在技术群里问的问题,我当时简单地研究了一下,就写出来了。 现在写文章分享给大家,虽然我觉得这种需求非常小众,几乎不会有人用到。
阅读全文
摘要:继上一篇文章在.NET Core,除了VB的LikeString,还有其它方法吗?(四种LikeString实现分享)分享了四种LikeString的实现方式,笔者对这四种实现方式,不管是执行性能还是内存分配性能上,都不太满意。 那么是否有好的实现方法呢?答案是有的。 今天我们就搬出ReadOnly
阅读全文
摘要:Like运算符很好用,特别是它所提供的其中*、?这两种通配符,在Windows文件系统和各类项目中运用非常广泛。
但Like运算符仅在VB中支持,在C#中,如何实现呢?
以下是关于LikeString的四种实现方式,其中第四种为Regex正则表达式实现,且在.NET Standard 2.0及以上平台支持。
阅读全文
摘要:手撸基于ASCII码表的校验密码方法。
附赠正则表达式
密码规则:包含 数字,大小写,特殊字符^%&',;=?$\",长度8~20位。
阅读全文
摘要:今天有个群友问了这个问题:"字符串分割时,如何连同分隔符一起返回?"。 我这里写了个String扩展类,模仿原生的Split方法,与原生Split方法的区别在于多了个返回分隔符的枚举功能。 class Program { static void Main(string[] args) { var f
阅读全文