Mutex 类 构造函数和方法 系统只能运行一个程序的实例 解释一下上面的示例 接替运行 进程同步示例 另外 Mutex 类 Mutex 中文为互斥,Mutex 类叫做互斥锁。它还可用于进程间同步的同步基元。 互斥锁(Mutex),用于多线程中防止两条线程同时对一个公共资源进行读写的机制。 [......] 继续阅读

2020年4月18日 0条评论 2406点热度 1人点赞 痴者工良 阅读全文

本章主要讲述多线程竞争下的原子操作。 知识点 竞争条件 线程同步 CPU时间片和上下文切换 阻塞 内核模式和用户模式 Interlocked类 1,出现问题 2,Interlocked.Increment() 3,Interlocked.Exchange() 4,Interlocked.Co[......] 继续阅读

2020年4月18日 0条评论 2657点热度 0人点赞 痴者工良 阅读全文

1,Lock lock 原型 lock 编写实例 2,Monitor 怎么用呢 解释一下 示例 设置获取锁的时效 C# 中,可以使用 lock 关键字和 Monitor 类来解决多线程锁定资源和死锁的问题。 官方解释:lock 语句获取给定对象的互斥 lock,执行语句块,然后释放 l[......] 继续阅读

2020年4月17日 0条评论 2321点热度 0人点赞 痴者工良 阅读全文

目录 1,获取当前线程信息 2,管理线程状态 2.1 启动与参数传递 2.1.1 ParameterizedThreadStart 2.1.2 使用静态变量或类成员变量 2.1.3 委托与Lambda 2.2 暂停与阻塞 2.3 线程状态 2.4 终止 2.5 线程的不确定性 2.6 线程优[......] 继续阅读

2020年4月15日 0条评论 2566点热度 3人点赞 痴者工良 阅读全文

RuntimeInformation、Environment 获取信息 反射获取信息 获取属性值 反射获取特性值 获取某个属性的值以及别名 反射获取信息 使用 总结 [......] 继续阅读

2020年2月29日 0条评论 2156点热度 0人点赞 痴者工良 阅读全文

1,判断类型 判断是否某种类型 1.1 类和委托 1.1.1 判断是否类型或委托 1.1.2 判断是否泛型 1.1.3 泛型的参数名称和泛型限定 泛型约束 GenericParameterAttributes 枚举 泛型约束关系 1.1.4 是否委托 1.1.5 访问修饰符 1.1.6 密封类、[......] 继续阅读

2020年2月2日 2条评论 3124点热度 0人点赞 痴者工良 阅读全文

1,InvokeMember 1.1 InvokeMember 参数 1.1.1 name 1.1.2 invokeAttr 1.1.3 binder 1.1.4 target 1.1.5 args 1.1.6 返回 1.1.7 BindingFlags 1.1.8 根据是否公开 1.1.9 大小[......] 继续阅读

2020年1月18日 1条评论 2376点热度 0人点赞 痴者工良 阅读全文

1,属性字段的赋值和读值 2,自定义特性和特性查找 2.1 特性规范和自定义特性 2.1.1 定义特性 2.1.2 限制特性的使用 2.1.3 特性的构造函数和属性 2.2 检索特性 2.2.1 方式一 2.2.2 方式二 3,设计一个数据验证工具 3.1 定义抽象验证特性类 3.2 实现多个[......] 继续阅读

2020年1月12日 2条评论 2990点热度 0人点赞 痴者工良 阅读全文

1,编写依赖注入框架 1.1 路由索引 1.1.1 判断控制器 Controller 是否存在 1.1.2 判断 Action 是否存在 1.2 依赖实例化 1.3 实例化类型、依赖注入、调用方法 2,编写控制器和参数类型 2.1 编写类型 2.2 实现控制器 3,实现低配山寨 ASP.NE[......] 继续阅读

2020年1月12日 1条评论 10248点热度 0人点赞 痴者工良 阅读全文

1,MemberInfo 1.1 练习-获取类型的成员以及输出信息 1.2 MemberType 枚举 1.3 MemberInfo 获取成员方法并且调用 1.4 获取继承中方法的信息(DeclaringType 和 ReflectedType) 2,从 IL 看反射 2.1 获取属性的构造 2.[......] 继续阅读

2020年1月11日 1条评论 2395点热度 0人点赞 痴者工良 阅读全文

1,实例化类型 1.1 Activator.CreateInstance() 1.1.1 简单类型 1.1.2 简单类型的构造函数 1.1.3 object 1.1.4 故意出错 1.1.5 Activator.CreateInstance() 性能 1.2 ConstructorInfo.Inv[......] 继续阅读

2020年1月5日 0条评论 2399点热度 0人点赞 痴者工良 阅读全文

1,获取类型的信息 1.1 类型的基类和接口 1.1.1 基类 1.1.2 获取实现的接口 1.1.3 获取泛型接口 1.2 获取属性、字段成员 1.2.1 构造函数 1.2.2 属性 1.2.3 字段 1.2.4 方法 1.2.5 事件 1.2.6 成员 [......] 继续阅读

2020年1月5日 0条评论 2158点热度 1人点赞 痴者工良 阅读全文

1,反射的使用概述 1.1 什么是反射 1.2 反射可以做什么 1.3 Type 类 1.4 反射使用归类 1.4 Type 一些常用属性 2,获取 Type 2.1 获取 Type 类型 2.2 数组 Type 生成数组 Type 获取数组 Type 获取数组的元素类型、维数 矩形数组(交错数组[......] 继续阅读

2020年1月5日 5条评论 2756点热度 1人点赞 痴者工良 阅读全文

1. 说明 1.1 关于反射、特性 2. 程序集操作 2.1 获取 程序集对象(Assembly) 2.1.1 运行时获取程序集 2.1.2 使用方法 2.1.3 从文件加载程序集 2.1.4 使用方法 2.2 Assembly 使用 2.2.1 获取程序集完全限定名称 2.2.2 Assembl[......] 继续阅读

2019年12月29日 2条评论 2887点热度 0人点赞 痴者工良 阅读全文

表达式树练习实践:C#值类型、引用类型、泛型、集合、调用函数 [TOC] 一,定义变量 C# 表达式树中,定义一个变量,使用 ParameterExpression。 创建变量结点的方法有两种, Expression.Parameter() Expression.Variable() // 另外,[......]继续阅读

2019年12月15日 1条评论 1805点热度 0人点赞 痴者工良 阅读全文

表达式树练习实践:入门基础 [TOC] 什么是表达式树 来自微软官方文档的定义: 表达式树以树形数据结构表示代码。 它能干什么呢? 你可以对表达式树中的代码进行编辑和运算。 这样能够动态修改可执行代码、在不同数据库中执行 LINQ 查询以及创建动态查询。 好不好玩? 表达式树还能用于动态语言运行[......] 继续阅读

2019年12月15日 3条评论 2411点热度 0人点赞 痴者工良 阅读全文

表达式树练习实践:C# 循环 [TOC] C# 提供了以下几种循环类型。 循环类型 描述 while 循环 当给定条件为真时,重复语句或语句组。它会在执行循环主体之前测试条件。 for/foreach 循环 多次执行一个语句序列,简化管理循环变量的代码。 do...while 循环 除了它是在循环主[......] 继续阅读

2019年12月15日 1条评论 2109点热度 0人点赞 痴者工良 阅读全文

表达式树练习实践:C#判断语句 [TOC] 判断语句 C# 提供了以下类型的判断语句: 语句 描述 if 一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。 if...else 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。 嵌套 if 语句 您可[......] 继续阅读

2019年12月15日 4条评论 2658点热度 0人点赞 痴者工良 阅读全文

表达式树练习实践:C# 运算符 [TOC] 在 C# 中,算术运算符,有以下类型 算术运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 其他运算符 这些运算符根据参数的多少,可以分作一元运算符、二元运算符、三元运算符。本文将围绕这些运算符,演示如何使用表达式树进行操作。 对于一元运算符和二元运[......] 继续阅读

2019年12月15日 1条评论 2185点热度 0人点赞 痴者工良 阅读全文

表达式树练习实践:变量、常量与赋值 定义变量 ParameterExpression 用来创建变量、变量参数表达式。 在 C# 中,变量分为以下几种类型: 值类型(Value types) 引用类型(Reference types) 指针类型(Pointer types) 一般上,只用到值类型和[......] 继续阅读

2019年12月15日 0条评论 2073点热度 0人点赞 痴者工良 阅读全文