随笔分类 -  .Net~C#

摘要:工作中刚刚完成一个xx监控服务的开发任务,才疏学浅,仅仅是简单的实现,现在对开发中遇到的几个问题做一下整理。 一个是利用XML文件记录任务信息,XML文件简洁清晰、生成和解析操作方便,但是会涉及到文件越来越大的情况: C# - 操作大型XML文件; 另外一个是文件越来越大,占用存储空间,涉及压缩存储 阅读全文
posted @ 2017-03-06 11:38 万箭穿心,习惯就好。 阅读(827) 评论(0) 推荐(0)
摘要:对于小型XML文件,利用XDocument和XMLDocument可以很方便进行读写(推荐XDocument),但问题是XDocument和XMLDocument是In-Memory类型的,随着文件大小的增大,内存消耗会越来越大,同时读写速度会降低。本文总结如下几种方式操作大型XML文件: 读 - 阅读全文
posted @ 2017-02-27 22:31 万箭穿心,习惯就好。 阅读(1431) 评论(0) 推荐(1)
摘要:TcpClient类 TcpListener类 TCP通信 UDP通信 参考: 阅读全文
posted @ 2016-12-09 23:31 万箭穿心,习惯就好。 阅读(374) 评论(0) 推荐(0)
摘要:Socket类 初始化 public socket (AddressFamily addressFamily,SocketType sockettype,ProtocolType protocolType) public void Bind(EndPoint localEP); // 绑定端口 pu 阅读全文
posted @ 2016-12-09 00:01 万箭穿心,习惯就好。 阅读(1692) 评论(0) 推荐(0)
摘要:来自英国的用C#语言编写的开源的TCP/UDP网络通信框架,简单方便,性能稳定。 参考: NetworkComms官网; NetworkComms通信框架中文网; 介绍开源的.net通信框架; Networkcomms.net; 阅读全文
posted @ 2016-11-09 23:55 万箭穿心,习惯就好。 阅读(694) 评论(0) 推荐(0)
摘要:System.Timers.Timer 服务器计时器,允许指定在应用程序中引发事件的重复时间间隔。 其中, public delegate void ElapsedEventHandler(object sender, ElapsedEventArgs e); 使用示例: System.Thread 阅读全文
posted @ 2016-11-09 23:52 万箭穿心,习惯就好。 阅读(2287) 评论(0) 推荐(0)
摘要:C#的集合类命名空间介绍: 集合基于ICollection接口、IList接口、IDictionary接口及其泛型接口版本、IEnumerable接口及其泛型版本,其中接口IList和IDictionary均从ICollection接口和IEnumerable接口派生,因此所有集合全部直接或间接基于 阅读全文
posted @ 2016-11-09 23:34 万箭穿心,习惯就好。 阅读(3697) 评论(5) 推荐(4)
摘要:异步编程 同步编程,请求响应模型,同步化、顺序化、事务化。 异步编程,事件驱动模型,以 Fire and Forget 方式实现。 关于创建异步方法的比较:参考 Thread:不断创建Thread会消耗很大cup,导致异步效率变慢 delegate委托异步:需要不断的实例化委托类,会消耗cup和内存 阅读全文
posted @ 2016-11-08 23:46 万箭穿心,习惯就好。 阅读(2537) 评论(0) 推荐(0)
摘要:lock 关键字, Monitor 监控器, 参考: ; Semaphore 信号量, Mutex 互斥体, 参考: ; 阅读全文
posted @ 2016-11-08 22:43 万箭穿心,习惯就好。 阅读(618) 评论(0) 推荐(0)
摘要:基础概览 多线程之信号系统命名空间 using System.Threading; 线程同步类的继承层次关系图 终止状态和非终止状态 在终止状态下,被WaitOne()阻塞的线程会逐个得到释放。如果一个线程在EventWaitHandle对象处于终止状态时调用其WaitOne()方法,无法起到阻塞线 阅读全文
posted @ 2016-11-06 22:57 万箭穿心,习惯就好。 阅读(2985) 评论(0) 推荐(0)
摘要:Process 进程类 // 提供对本地和远程进程的访问,启动/停止本地系统进程 public class Process : Component { public int Id { get; } // 系统生成的进程唯一标识符 public string ProcessName { get; } 阅读全文
posted @ 2016-11-05 22:38 万箭穿心,习惯就好。 阅读(7613) 评论(0) 推荐(3)
摘要:并行~并发 并发 Concurrency,逻辑上的同时发生,一个处理器(在不同时刻或者说在同一时间间隔内)"同时"处理多个任务。宏观上是并发的,微观上是按排队等待、唤醒、执行的步骤序列执行。并发性是对有限物理资源强制行使多用户共享(多路复用)以提高效率。 并行 Parallelism,物理上的同时发 阅读全文
posted @ 2016-11-05 22:36 万箭穿心,习惯就好。 阅读(11620) 评论(6) 推荐(8)
摘要:IDisposable 接口 托管资源和非托管资源 托管资源 CLR 控制和管理的内存资源,如程序中在 Heap 上分配的对象、作用域内的变量等; GC 机制实现自动内存管理和托管堆的全权管理; 非托管资源 CLR 不能控制管理的部分,如文件流Stream/数据库连接coonection/窗口句柄/ 阅读全文
posted @ 2016-09-09 10:45 万箭穿心,习惯就好。 阅读(395) 评论(0) 推荐(0)
摘要:泛型 应用 1. 比较 2 个对象的大小? 参考 1. .NET面试题系列 - 对象大小比较;由一个泛型方法想到的 - 对象大小比较; 泛型 应用 1. 比较 2 个对象的大小? 参考 1. .NET面试题系列 - 对象大小比较;由一个泛型方法想到的 - 对象大小比较; 阅读全文
posted @ 2016-09-01 17:13 万箭穿心,习惯就好。 阅读(178) 评论(0) 推荐(0)
摘要:IEnumerable / IEnumerator 首先,IEnumerable / IEnumerator 接口定义如下: public interface IEnumerable /// 可枚举接口 { IEnumerator GetEnumerator(); } public interfac 阅读全文
posted @ 2016-08-10 11:48 万箭穿心,习惯就好。 阅读(535) 评论(0) 推荐(0)
摘要:单元测试(Unit Test)的一个测试用例(Test Case)是一小段代码,用于测试一个小的程序功能的行为是否正常,保证开发的功能子项能正确完成并实现其基本功能。一个单元测试是用于判断某个特定条件下某个特定函数的行为。单元测试是随功能代码一起的一个配套工具,再配合面向接口编程方法和Mock技术, 阅读全文
posted @ 2016-08-03 16:02 万箭穿心,习惯就好。 阅读(998) 评论(0) 推荐(0)
摘要:目前工作中用到SilverLight,有必要对其作一定的了解。 1.LayoutRoot_Loaded 和 OnPageLoad <Grid x:Name="LayoutRoot" Loaded="LayoutRoot_Loaded"> // 支持页面刷新 private void LayoutRo 阅读全文
posted @ 2016-06-01 23:33 万箭穿心,习惯就好。 阅读(506) 评论(0) 推荐(0)
摘要:可扩展标记语言 (Extensible Markup Language), 标记 (markup) 是关键部分,是标准通用标记语言 (Standard Generalized Markup Language,SGML) 的子集,一种简单的存储和提取数据的文本格式。 XML数据分层组织,主要用于传输和 阅读全文
posted @ 2016-05-20 10:21 万箭穿心,习惯就好。 阅读(384) 评论(0) 推荐(0)
摘要:初入职场,开始接触C#,开始接触WCF,那么从头开始学习吧,边学边补充吧。学习WCF之前,有必要先来了解下SOA SOA Service-Oriented Architecture,面向服务架构,粗粒度、开放式、松耦合的服务结构,将应用程序的不同功能单元(称为服务)通过这些服务之间定义良好的接口和契 阅读全文
posted @ 2016-05-11 23:14 万箭穿心,习惯就好。 阅读(900) 评论(0) 推荐(1)
摘要:与 Java有不同,借鉴 Delphi的特点,与 COM(组件对象模型)直接集成,是 .NET windows网络框架的主角。 C#是一种语言,.net是一个平台。 C#不但可以开发基于.net的应用程序,也可以开发基于WinForm的程序。 . Net 是 Microsoft 的 XML Web 阅读全文
posted @ 2016-05-10 11:38 万箭穿心,习惯就好。 阅读(722) 评论(0) 推荐(0)