随笔分类 -  .NET

摘要:大道至简 我们在软件工程中进行的架构设计、模块实现、编码等工作,很多时候说到底就是围绕一件事进行:解耦。 三层架构,MVC,微服务,DDD.我们分析问题,抽象问题,然后划分边界,划分层次。 也是为了让我们的类、模块、系统有更强的复用能力,提高生产效率。 这一次,我想深入了解和探讨我曾经很迷糊,也没有 阅读全文
posted @ 2020-02-14 17:50 K战神 阅读(1735) 评论(4) 推荐(10) 编辑
摘要:前言 对于现在很多编程语言来说,多线程已经得到了很好的支持, 以至于我们写多线程程序简单,但是一旦遇到并发产生的问题就会各种尝试。 因为不是明白为什么会产生并发问题,并发问题的根本原因是什么。 接下来就让我们来走近一点并发产生的那些问题。 猜猜是多少? public class ThreadTest 阅读全文
posted @ 2019-04-28 00:47 K战神 阅读(6198) 评论(4) 推荐(0) 编辑
摘要:前面一篇文章提到过 数组越界行为,虽然编译器为我们做了大量的检查工作让我们避免这些错误。 但是我觉得还是有必要模拟一下数组越界,感受一下这个错误。 那么对于.NET来说我们怎么来模拟数组越界呢? 一、 [VS] 项目 -> 右击 -> 属性 -> 生成 -> (勾选)允许不安全代码 二、测试代码 1 阅读全文
posted @ 2019-01-12 17:42 K战神 阅读(458) 评论(0) 推荐(1) 编辑
摘要:提起栈想必会听到这样几个关键词:后进先出,先进后出,入栈,出栈。 栈这种数据结构,数组完全可以代替其功能。 但是存在即是真理,其目的就是避免暴漏不必要的操作。 如角色一样,不同的情景或者角色拥有不同的操作权限。 那我们来了解一下栈,栈是一种线性数据结构,并且只能从一端压入或者弹出 = 添加或者删除。 阅读全文
posted @ 2018-12-02 02:06 K战神 阅读(397) 评论(0) 推荐(0) 编辑
摘要:目录: 为什么要使用任务 任务 一、为什么使用任务 线程池已经可以让我们简单地创建线程,并优化了性能。 但是,线程池的缺点在于,我不清楚我的操作什么时候完成,也不能收到返回值,因为委托是没有返回值的。 所以任务就出现了,它可以完成线程池能够完成的任务。 System.Threading.Tasks 阅读全文
posted @ 2018-04-02 21:40 K战神 阅读(339) 评论(0) 推荐(0) 编辑
摘要:目录: 为什么要使用线程池 简单的线程池操作 执行上下文 协作式取消 一、为什么要使用线程池:线程池概念理解 备注:线程池中的线程是后台线程。 1、为什么会有线程池? 因为创建线程和销毁线程相对来说需要消耗大量的时间和资源。 太多的线程会浪费内存。 操作系统需要在线程间来回切换,线程过多,有损性能。 阅读全文
posted @ 2018-03-28 22:35 K战神 阅读(287) 评论(0) 推荐(0) 编辑
摘要:一、策略模式 策略模式:封装易变化的算法,可互相替换。 GoF《设计模式》中说道:定义一系列算法,把它们一个个封装起来,并且使它们可以相互替换。该模式使得算法可独立于它们的客户变化。 比如:一个推送服务类,推送的方式,可以分为:QQ推送、邮箱推送、App推送、PC插件推送。 这里讲两个点: 1、推送 阅读全文
posted @ 2015-12-20 22:44 K战神 阅读(1330) 评论(0) 推荐(0) 编辑
摘要:目录 线程的几种状态 基础线程 前台线程、后台线程 一、线程的几种状态 我们所说的基础线程就是通过Thread类显示创建的线程。可以大体了解一下Thread类相关的成员: 属性: 方法: 线程的5个状态: 1、创建状态(new): 对应 Thread th= new Thread(worker) 时 阅读全文
posted @ 2015-07-08 23:05 K战神 阅读(931) 评论(3) 推荐(2) 编辑
摘要:目录:序列化、反序列化类型序列化的前提格式化器序列化原理控制序列化和反序列化一、序列化、反序列化字节流序列化是将一个对象转换成一个字节流的过程。字节流反序列化是将一个字节流转回一个对象的过程。--------序列化----------对象:pList p = new List() { "Sun", ... 阅读全文
posted @ 2015-07-06 07:31 K战神 阅读(1220) 评论(4) 推荐(2) 编辑
摘要:目录:上篇:程序集加载与反射(一):基础篇Demo:下载一、Demo下面这个Demo,使用了策略模式模仿了一下插件机制。我们举个一邮件发送的例子:1、一个策略类库:Strategy,里面定义了邮件需要实现的接口:IEmailStrategy.using System;using System.Col... 阅读全文
posted @ 2015-06-30 06:05 K战神 阅读(843) 评论(2) 推荐(0) 编辑
摘要:目录程序集加载获取类型信息构造类型实例通过反射发现成员调用成员一、程序集加载Load方法:CLR通过调用System.Rreflection.Assemblly类的静态方法来显示加载程序集。public static Assembly Load(AssemblyName assemblyRef);p... 阅读全文
posted @ 2015-06-23 22:10 K战神 阅读(3156) 评论(2) 推荐(3) 编辑
摘要:目录前言分配内存和资源初始化清理本地资源回收内存 & 垃圾回收算法垃圾回收机制:代前言:资源的生存周期 1、new一个对象时,调用IL命令newobj,为资源类型分配内存。 2、初始化内存,构造函数初始化资源的状态。 3、程序中来回的调用、访问资源。 4、摧毁资源的状态并进行清理。 ... 阅读全文
posted @ 2015-05-21 07:28 K战神 阅读(1921) 评论(6) 推荐(3) 编辑
摘要:目录异常的结构以及执行顺序System.Exception异常类一、异常的结构以及执行顺序先上一段代码:a是多少? int a = 0; try { a++; throw new Exceptio... 阅读全文
posted @ 2015-05-05 06:29 K战神 阅读(783) 评论(0) 推荐(1) 编辑
摘要:目录Attribute是什么自定义Attribute一、Attribute是什么将一些附加信息与制定目标相关联的方式。编译器在元数据中生成这些额外的信息。也叫做特性。比如之前文章中提到的:枚举类型与位运算。也是向枚举类型定制了[FlagsAtribute]特性,将枚举类型作为一个位标识集合使用。 [... 阅读全文
posted @ 2015-04-27 22:47 K战神 阅读(1123) 评论(0) 推荐(1) 编辑
摘要:目录泛型委托简化语法委托与反射相关文章链接:事件,你是否也这样理解http://www.cnblogs.com/sunchong/p/sunchong.html委托,你是否也这样理解(一)http://www.cnblogs.com/sunchong/p/3480612.html一、泛型委托我们知道... 阅读全文
posted @ 2015-04-26 23:44 K战神 阅读(1087) 评论(2) 推荐(2) 编辑
摘要:目录:什么是委托委托的作用委托的本质委托链委托链返回值一、什么是委托?委托:将符合规则的方法进行包装。装载方法引用的盒子。将方法作为参数传递。 class Program { static void Main(string[] args) { ... 阅读全文
posted @ 2015-04-21 22:32 K战神 阅读(870) 评论(1) 推荐(1) 编辑
摘要:目录枚举位运算一、枚举枚举类型是名称与值的组合。枚举类型是值类型。1、为什么枚举类型是名称与值得组合?有时我只看到键名称,没有看到相对的值。public enum Options{ Insert, Update, Save, ... 阅读全文
posted @ 2015-04-20 20:57 K战神 阅读(9216) 评论(0) 推荐(4) 编辑
摘要:目录事件的特点。邮件实例及编译器如何对待事件总结一、事件public event EventHandler NewMail; public 其他类可以根据规则进行注册和注销。event 我觉得就是一种标识符,编译器可以进行识别,进而生成相关事件代码。EventHander 泛型委托public de... 阅读全文
posted @ 2015-04-17 09:16 K战神 阅读(538) 评论(0) 推荐(0) 编辑
摘要:声明:本文只是自己的总结和积累。IIS7.x 目录 IIS流程及组成部分 ASP.NET流程及组成部分 IIS与ASP.NET MVC 一、IIS流程及组成部分 1、Http.SYS:负责监听HTTP请求(它不属于IIS范畴,但是和IIS联系紧密) Http.SYS和IIS是相互独立的,但是之间又是 阅读全文
posted @ 2014-11-17 07:26 K战神 阅读(779) 评论(0) 推荐(1) 编辑
摘要:一、什么是线程 线程是一组指令的集合,或者是程序的特殊段,它可以在程序里独立执行。也可以把它理解为代码运行的上下文。所以线程基本上是轻量级的进程,它负责在单个程 序里执行多任务。通常由操作系统负责多个线程的调度和执行。 二、线程的开销 线程产生空间(内存消耗)和时间(运行时的执行性能)上的消耗。 ( 阅读全文
posted @ 2014-09-11 22:51 K战神 阅读(365) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示