随笔分类 -  .NET

摘要:简单用法 //获取MemoryPool实例,实际返回了一个ArrayMemoryPool<T> MemoryPool<char> Pool = MemoryPool<char>.Shared; //加上using using IMemoryOwner<char> owner = Pool.Rent( 阅读全文
posted @ 2021-09-14 16:29 张三~~ 阅读(1346) 评论(1) 推荐(5) 编辑
摘要:概述 弱引用 GC在回收时检测对象是否有强引用,如果没有则可以执行回收。 那么什么是强引用的对象?简单概括说就是程序当前可以访问的对象。举两个例子 某个类里定义了一个静态变量GlobalConfig,那这个GlobalConfig就是被强引用的对象,如果设置GlobalConfig=null,强引用 阅读全文
posted @ 2021-09-13 22:06 张三~~ 阅读(565) 评论(1) 推荐(1) 编辑
摘要:定义 高性能托管数组缓冲池,可重复使用,用租用空间的方式代替重新分配数组空间的行为 好处 可以在频繁创建和销毁数组的情况下提高性能,减少垃圾回收器的压力 使用 获取缓冲池实例:Create/Shared var pool=ArrayPool[byte].Shared 调用缓冲池实例**Rent()* 阅读全文
posted @ 2021-09-13 18:28 张三~~ 阅读(2157) 评论(0) 推荐(5) 编辑
摘要:.NetCore的配置选项建议结合在一起学习,不了解.NetCore 配置Configuration的同学可以看下我的上一篇文章 [.Net Core配置Configuration源码研究] 由代码开始 定义一个用户配置选项 public class UserOptions { private st 阅读全文
posted @ 2021-09-07 09:58 张三~~ 阅读(1047) 评论(3) 推荐(6) 编辑
摘要:最近又研究了一下.NetCore配置选项的源码实现,又学习到了不少东西。这篇文章先写一下IConfiguration的学习成果,Options的后面补上 核心类 ConfigurationBuilder:IConfigurationBuilder (构建IConfiguration) IConfig 阅读全文
posted @ 2021-09-06 22:35 张三~~ 阅读(607) 评论(0) 推荐(1) 编辑
摘要:目前项目开发基本都基于.NetCore 3.1以上了,有些老版本的规则和概念也没有列出来,低版本的垃圾回收类型和内存释放方式会有所不同 垃圾回收器为什么存在 开发人员不必手动释放内存。 有效分配托管堆上的对象。 回收不再使用的对象,清除它们的内存,并保留内存以用于将来分配。 托管对象会自动获取干净的 阅读全文
posted @ 2021-08-16 15:04 张三~~ 阅读(299) 评论(1) 推荐(1) 编辑
摘要:IdentityServer4的基础知识和使用方式网上有很多特别优秀的文章,如果有对其不了解的推荐阅读一下下面的两篇文章 "http://www.ruanyifeng.com/blog/2014/05/oauth_2_0.html" "https://www.cnblogs.com/stulzq/p 阅读全文
posted @ 2019-05-10 12:05 张三~~ 阅读(1294) 评论(0) 推荐(3) 编辑
摘要:FluentScheduler介绍 github地址: "https://github.com/fluentscheduler/FluentScheduler" FluentScheduler是一个简单的任务调度框架,使用起来非常方便,这个框架也是我在搜索iis预加载的时候偶然间发现的,立马拿来试用 阅读全文
posted @ 2018-05-15 16:52 张三~~ 阅读(4719) 评论(17) 推荐(10) 编辑
摘要:关于RabbitMQ是什么以及它的概念,不了解的可以先查看一下下面推荐的几篇博客 "https://blog.csdn.net/whoamiyang/article/details/54954780" "https://www.cnblogs.com/frankyou/p/5283539.html" 阅读全文
posted @ 2018-05-08 14:57 张三~~ 阅读(5227) 评论(1) 推荐(3) 编辑
摘要:对于Zookeeper的定义以及原理,网上已经有很多的优秀文章对其进行了详细的介绍,所以本文不再进行这方面的阐述。 本文主要介绍一些基本的准备工作以及zookeeper.net的使用。 本文源代码github地址: "https://github.com/Mike Zrw/ZookeeperHelp 阅读全文
posted @ 2018-01-23 11:23 张三~~ 阅读(1371) 评论(0) 推荐(1) 编辑
摘要:在微服务架构中,如果忽略服务的安全性,任由接口暴露在网络中,一旦遭受攻击后果是不可想象的、 保护微服务键安全的常见方案有:1.JWT令牌(token) 2.双向SSL 3.OAuth 2.0 等 本文主要介绍使用Token的实现方式 源码地址: "https://github.com/Mike Zr 阅读全文
posted @ 2018-01-18 12:58 张三~~ 阅读(9468) 评论(0) 推荐(2) 编辑
摘要:微软的Task已经出来很久了,一直没有去研究,以为就是和Thread差不多的东西。直到最近看到了Task的使用介绍,发现比Thread的语法要精炼多了,于是便在项目中用上了。 结果就出问题了,数据库连接池用一段时间就满了,排除了各种原因,最后开始怀疑是不是Task有什么不为人知的隐患。 由于对Tas 阅读全文
posted @ 2017-11-08 18:52 张三~~ 阅读(4458) 评论(2) 推荐(10) 编辑
摘要:1 public class SqlExpressionTree 2 { 3 public string GetQuerySql<T>(Expression<Func<T, bool>> condi) 4 { 5 string condition = "select * from "+typeof( 阅读全文
posted @ 2017-09-25 18:26 张三~~ 阅读(605) 评论(0) 推荐(1) 编辑
摘要:Stream st = Request.Files[0].InputStream; Byte[] buffer = new Byte[st.Length]; st.Read(buffer, 0, buffer.Length); MemoryStream stream = new MemoryStre 阅读全文
posted @ 2016-09-26 17:25 张三~~ 阅读(763) 评论(0) 推荐(1) 编辑