摘要: 什么是配置 .NET中的配置,本质上就是key-value键值对,并且key和value都是字符串类型。 在.NET中提供了多种配置提供程序来对不同的配置进行读取、写入、重载等操作,这里我们以为.NET 的源码项目为例,来看下.NET中的配置主要是有那些类库。下面这个截图是.NET 源码中和配置相关 阅读全文
posted @ 2025-04-18 10:07 caoruipeng 阅读(356) 评论(0) 推荐(2)
摘要: 什么叫WPF的资源(Resource) 资源是保存在可执行文件中的一种不可执行数据。WPF中资源用ResourceDictionary类表示,这个类就是一个字典,字典的key和value都是object类型。所以在WPF中,资源可以可以是图像、字符串等所有的任意CLR对象,只要对象有一个默认的构造函 阅读全文
posted @ 2025-04-15 11:48 caoruipeng 阅读(232) 评论(0) 推荐(1)
摘要: 协变Covariance和逆变Contravariance 在 C# 中,协变和逆变能够实现数组类型、委托类型和泛型类型参数的隐式引用转换。简单点说,协变和逆变有一个基本的公式: 协变:IFoo<父类> = IFoo<子类>; 简单点说:从儿子变成老子,年龄自然长大,顺理成章,叫做协变。 逆变:IB 阅读全文
posted @ 2025-04-15 10:45 caoruipeng 阅读(26) 评论(0) 推荐(0)
摘要: in、out 和 ref 关键字 首先我们来说in、out 和 ref ,在 C# 中,in、out 和 ref 是用于方法参数的引用传递。在引用传递过程中,形参和实参都是指向相同的引用地址。 名称 作用 使用场景 是否需要提前初始化 in 只读参数,按引用传递 高效传递大对象但不希望修改其值 不需 阅读全文
posted @ 2025-04-14 11:45 caoruipeng 阅读(658) 评论(0) 推荐(4)
摘要: 字符串消息的序列化 在上一篇文章中,我们使用MQTTnet 框架,实现了一个MQTT服务器、MQTT发布者进程、MQTT订阅者进程。在消息传递过程中,我们将控制台的字符串直接传递。因为MQTT是应用层协议,它是基于TCP协议进行数据传输。我们 直到TCP本身是基于字节流的传输协议。所以我们的字符串最 阅读全文
posted @ 2025-04-08 11:44 caoruipeng 阅读(404) 评论(0) 推荐(2)
摘要: MQTT协议 MQTT协议是基于TCP传输协议之上的应用层协议,全程Message Queuing Telemetry Transport。主要用于物联网设备间的通信,在低带宽、不稳定网络环境下的优势非常明显。 当然普通的通信业务开发也是完全可以使用的。MQTT协议采用客户端-服务端架构模式,实现了 阅读全文
posted @ 2025-04-03 09:31 caoruipeng 阅读(788) 评论(3) 推荐(8)
摘要: 原子访问 通过Interlocked系列函数是 Windows API 提供的一组原子操作函数,用于在多线程环境中安全地操作共享变量。当我们执行这些Interlocked系列函数的时候 ,函数会对总线发出一个硬件信号,这个硬件信号可以防止CPU同一时刻访问同一个内存地址,从而大打到原子访问的目的。以 阅读全文
posted @ 2025-03-28 09:34 caoruipeng 阅读(36) 评论(0) 推荐(0)
摘要: 状态模式 状态模式是设计模式中的一种行为设计模式,对很多人来说,这个模式平时可能用不到。但是如果你做游戏开发的话,我相信你应该对这个模式有一个很深刻的理解。状态模式在游戏中开发中还是比较常见的。状态模式将状态的行为封装在独立的状态类中,使得状态转换变得更加清晰和易于管理。这样的话,对象只负责状态的切 阅读全文
posted @ 2025-03-18 09:30 caoruipeng 阅读(487) 评论(1) 推荐(0)
摘要: 系统中,进程主要有两部分组成:进程内核对象和进程地址空间。操作系统通过进程内核对象来管理进程,进程地址空间用于维护进程所需的资源:如代码、全局变量、资源文件等。 那么线程也是有两部分组成:线程内核对象和线程堆栈。操作系统通过线程内核对象对线程进行管理,线程堆栈用于维护线程执行代码时需要的所有的函数参 阅读全文
posted @ 2025-03-17 09:34 caoruipeng 阅读(470) 评论(0) 推荐(0)
摘要: 什么是内核对象 内核对象本质上就是内存中的一块内存 ,这块内存由操作系统进行管理和分配,任何应用程序都无法直接操作这块内存区域。至于内核对象的作用,我们暂且不说,这里只需要直到它是内存中的一块内存。 在内存中,内核对象的存储类似下图,进程中的每个内核对象都有自己的地址,并且内核对象有一个固定的数据结 阅读全文
posted @ 2025-03-14 13:41 caoruipeng 阅读(513) 评论(0) 推荐(4)
点击右上角即可分享
微信分享提示