C# 基础:构造函数、析构函数、解构函数

因为总感觉对于C#的知识掌握的不够透彻,所以最近在Kindle上购买了《C#7.0本质论》,复习一些基础知识,有了一些新发现。这里开一个小专题,记录一些书上提到的,在日常编程中可能会比较少用到,但是很有意思的一些内容。当然构造函数、析构函数,这些都是很熟悉的内容了,但是解构函数还是第一次听说,讲解这

逃离 IE 浏览器与 ActiveX 控件

前言因为公司产品是B/S架构,所以很多与硬件交互资源的功能,不可避免的要使用ActiveX控件。但是因为安全性问题,现代浏览器例如Chrome、Firefox、Edge等都已经放弃了对ActiveX的支持,所以这个方案已经不再是合适的选择。当然现阶段还是有很多解决方案,例如不使用新特性与新功能,坚定

TCP协议之服务端

之前介绍过串口通讯,相对来说串口通讯是比较简单的,不用关心另外一端的连接状态,只需要打开串口,监听接收事件即可。发送也很简单,一个Write方法控制。但是串口的问题也很明显,我们无法得知另外一端是否可用,只能通过通讯协议里进行指定,设置心跳包或者指定接收后进行响应。打开监听简单,但是维持监听判断监听

23种设计模式与常用设计模式

设计模式设计模式设计模式(DesignPattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。目的是为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。设计模式三大类型设计模式分为三种类型,共23类。创建型模式:创建型模式用来处理对象的创建过程,单例模式、抽象工厂模式、

设计模式六大原则

单一职责原则(SingleResponsibilityPrinciple简称:SRP)定义:应该有且仅有一个原因引起类的变更。接口的职责在设计时应该做到单一,降低类的复杂性,实现的职责都有明确的定义,提高了可读性、可维护性、可扩展性;变更引起的风险降低,如果接口隔离性做的好,一个接口的修改只对相应实

AOP 面向切面编程

AOP面向切面编程与OOP面向对象编程的关系AOP(Aspect-OrientedProgramming,面向方面编程),可以说是OOP(Object-OrientedPrograming,面向对象编程)的补充和完善。OOP引入封装、继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集

正则表达式总结

正则表达式正则表达式作为一个强大的字符串处理方案,一直受到广大程序员的青睐。其不但使用灵活,而且字符串处理的速度也基本被各种编程语言优化到极致,在字符串匹配、提取、替换、分割等一直是首选的方案。最近有一个前端妹子突然问了一个非常简单的正则表达式应该怎么写,我诧异于她不会写正则表达式的同时,思考了一下

创建支持多个dotnet版本的类库项目

如何创建支持支持多个dotnet版本的类库项目开发中,经常会遇到需要所开发的类库同时支持net40、net451、netstandart2.0等版本。随意打开一些常用的开源项目比如“Dapper”就会发现,项目并不会针对不同的dotnet版本,创建不同分支,而是一套代码支持了多个不同的dotnet版

线程与线程池

ThreadThread是前台线程,启动后需要执行完成后才会退出。但是可以通过IsBackground将其设置为后台线程,程序退出该线程也会立即退出。如果希望等待线程执行完成后再继续执行,可以使用Join()方法。Thread没有回调,也没有返回值。ThreadPoolCLR线程池:管理线程开销最好

异步多线程

基本概念进程首先打开任务管理器,可以查看电脑当前运行的进程。从任务管理器里面可以看到当前所有正在运行的进程。那么究竟什么是进程呢?进程(Process)是Windows系统中的一个基本概念,它包含着一个运行程序所需要的资源。一个正在运行的应用程序在操作系统中被视为一个进程,进程可以包括一个或多个线程
Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×