摘要: 我的ORM一直是用反射来实现动态生成Entity的,最近想提高一下效率,就尝试了一下用其他的方法来生成实体类。平时看到的资料都说用Expression的速度已经接近于Emit了,效率非常高,但测试的结果却让我大跌眼镜。。。下面对直接赋值、反射、委托、Expression和Emit 动态方法五种方式来生成实体类进行测试。如果大家有其他更好的方法来生成实体类,请不吝赐教,谢谢。----------------Update1: 重新修改了一下测试用例,让测试更加合理化,原来的循环是不合理的,现在改为一个DataTable ,生成一个List<T> 的实体类ListUpdate2: 增加了 阅读全文
posted @ 2012-03-17 08:00 AndyLiu 阅读(4273) 评论(16) 推荐(6) 编辑
摘要: 以前项目中使用的单例一直是用的最简单的C#写法,是Thread Safe的,多线程下只会有一个实例。代码如下:public sealed class Singleton { public static readonly Singleton Instance = new Singleton(); private Singleton() { } }最近项目有了新的需求,需要多个线程中实现多个实例,最好是在每个线程中是单例的。于是修改代码为最基本的实现,这种最基本的实现方法在网上几乎所有的中英文资料都是众口一词的说这种方法在多个线程下会开多个实例,但结果。。。... 阅读全文
posted @ 2012-03-17 05:20 AndyLiu 阅读(795) 评论(7) 推荐(1) 编辑