2017年2月17日

摘要: 一个进程有多个线程,线程创建时会占用1MB的栈,栈空间用于向方法传递实参,方法内部定义的局部变量也在栈上,栈从高位内存地址向低位内存地址构建 CLR其实允许定义一个同名、同参的方法,但是除了汇编,其他实现了CLR的语言都不允许这么干。这是为毛呢? CLR调用虚方法和非虚方法,CLR提供两个方法指令 阅读全文
posted @ 2017-02-17 23:52 larry_叶良辰 阅读(108) 评论(0) 推荐(0)

2017年2月5日

摘要: 值类型比引用类型轻,原因是他们不作为对象在托管堆中分配,不被垃圾回收,也不通过指针进行引用,但有时候需要获取对值类型的实例引用 装箱: PS:上述代码没有任何意义,因为自从有了泛型后ArrayList就很少有人用了。只是ArrayList类中的Add方法很有代表性,所以用他来说明 查看ArrayLi 阅读全文
posted @ 2017-02-05 22:17 larry_叶良辰 阅读(127) 评论(0) 推荐(0)
摘要: CLR IN C#这本书来来回回的看。有些东西记住了。有些东西没记住。(没记住就白看) 从今天开始每天看一点点,避免自己看的没耐心了。也把看到的东西记下来,就算已经记住的也记下来,谁他娘的知道我啥时候又忘记 一个重要的概念 IL代码—c#代码编译后生成的代码,由CLR负责执行IL代码 “引用类型必须 阅读全文
posted @ 2017-02-05 00:27 larry_叶良辰 阅读(124) 评论(0) 推荐(0)

2016年9月21日

摘要: 吐个槽! 今天看博客的时候看到一段话,借用一下“首先我不喜欢大量的配置文件进行配置,那简直是噩梦,比学习一门编程语言还痛苦” 哥们多少次学习JAVA就是让这一堆配置文件弄的一点脾气都没。 Ninject就不需要用配置文件进行配置。只通过代码就好了,完全符合面向对象思想,但是!!正因为缺少了配置文件, 阅读全文
posted @ 2016-09-21 23:26 larry_叶良辰 阅读(273) 评论(0) 推荐(0)

2016年9月20日

摘要: 什么是缓存: 缓存是将信息(数据或页面)放在内存中以避免频繁的数据库存储或执行整个页面的生命周期,直到缓存的信息过期或依赖变更才再次从数据库中读取数据或重新执行页面的生命周期 哪里用缓存: 数据被频繁的使用,并且很少发生变化或对即时性的要求不高。 怎么用缓存: .NET自带的缓存分为 Control 阅读全文
posted @ 2016-09-20 01:29 larry_叶良辰 阅读(265) 评论(0) 推荐(0)

2016年9月19日

摘要: 特性Attribute 特性就是类或方法名上方用中括号"[]"括起来的内容。创建自定义特性需要用到Attribute关键字,具体代码如下: 第一行的代码表示这个特性只允许在属性和字段上使用 AttributeTargets的枚举值包含这些内容 扩展方法 扩展方法使您能够向现有类型“添加”方法,而无需 阅读全文
posted @ 2016-09-19 10:20 larry_叶良辰 阅读(1044) 评论(0) 推荐(0)

2016年9月5日

摘要: Control 的Invoke和BeginInvoke的委托方法是在主线程,即UI线程上执行的。也就是说如果你的委托方法用来取花费时间长的数据,然后更新界面什么 的,千万别在UI线程上调用Control.Invoke和Control.BeginInvoke,因为这些是依然阻塞UI线程的,造成界面的假 阅读全文
posted @ 2016-09-05 16:50 larry_叶良辰 阅读(320) 评论(0) 推荐(0)
摘要: public partial class Form1 : Form { public Form1() { InitializeComponent(); var task = Task.Factory.StartNew(() => { for (int i ... 阅读全文
posted @ 2016-09-05 11:50 larry_叶良辰 阅读(1153) 评论(0) 推荐(1)

导航