LDARG_0

.........

2014年7月18日 #

ILSpy搜索功能加强版

摘要: 1.修改搜索功能,增加如下的额外搜索选项 A.按文本搜索(默认选项) B.按通配符搜索 C.按正则表达式搜索2.搜索增加如下特性: A.可以按照名字空间检索特定名字空间下的所有类. B.修正了官方版本无法搜索泛型类型的功能. C.根据搜索结果与关键字的相似程度,相似度越高的排在最前面警告... 阅读全文

posted @ 2014-07-18 14:09 sumok 阅读(721) 评论(0) 推荐(0) 编辑

2014年2月28日 #

new的原罪

摘要: 一直以为在开发阶段能够直接调用的,速度而言一定是最优秀的,因为总比后期通过反射之类来调用来得快吧.下面请看一个SB的例子,重新编译以后,这个类在创建100,000,000实体时居然耗费了16秒的时间: internal class CreateWithNew : EntityCreator where T : new() { public override T Create() { return new T(); } }//此SB相当荣幸的以为这个调用速度一定是最快的,怎么的也是编译级别的吧 奶奶的,居然还不如之前的解决方案:(创建100,000,000实体约4秒) /// ... 阅读全文

posted @ 2014-02-28 09:25 sumok 阅读(254) 评论(0) 推荐(0) 编辑

2014年2月25日 #

C# 直接调用vs 委托vs动态调用vs动态类型vs反射,最佳性能测试

摘要: 懒得解释,自己看代码测试结果:Direct call:00:00:00.0742191Delegate Direct:00:00:00.0687487Method Factory(IL):00:00:00.2015243Direct IL:00:00:00.1980190New Type:00:00:00.0860233Reflection:00:00:02.4178550using System.Reflection;using System.Reflection.Emit;using MoeCard.Emit;using MoeCard.Reflection;namespace MoeCa 阅读全文

posted @ 2014-02-25 02:58 sumok 阅读(407) 评论(0) 推荐(0) 编辑

2013年7月1日 #

C#自旋的艺术

摘要: CODE1: while (status == ServerStatus.Started) { if (*TaskLocker > 0) { for (int i = 0; i != *Level; i++) { ComputeListenerMemory memory = memories[i]; if (*memory.Flag == 0x01) { Interlocked.Decrement(ref *TaskLocker); *memory.Flag = 0x03; Parallel.... 阅读全文

posted @ 2013-07-01 14:18 sumok 阅读(698) 评论(0) 推荐(0) 编辑

2013年2月17日 #

微软的代码越来越高深莫测了

摘要: //微软的代码越来越高深莫测了private static int IndexOf(IEnumerable items, string parameterName){ if (items != null) { int num = 0; foreach (SqlParameter parameter2 in items) { if (ADP.SrcCompare(parameterName, parameter2.ParameterName) == 0) { retur... 阅读全文

posted @ 2013-02-17 13:32 sumok 阅读(168) 评论(0) 推荐(0) 编辑

2012年9月5日 #

Mongo DB 2.2 在windows下面的正确安装方法

摘要: 1:下载当前版本并且解压,解压后你会发现并没有setup.exe之类的文件,这是因为Mongo所有的可执行文件都在Bin目录下,直接即可使用。http://www.mongodb.org/downloads2.接下来的操作取决于你使用Mongo的习惯: a.临时使用的,可以建立一个指向mongod.exe的快捷方式,参数加上一个 "-dbpath 数据保存的路径" 即可。每次使用时点击快捷方式即可使用。 b.使用服务,这种方式还要看你的数据保存的路径,如果想使用默认路径,你要首先确保c:\data\db这个路径存在,然后可以使用 mongod.exe --install方式 阅读全文

posted @ 2012-09-05 15:56 sumok 阅读(166) 评论(0) 推荐(0) 编辑

2012年8月17日 #

发布一个用于大大提升Sql查询的锋利的武器:SqlEmitter

摘要: 这个类使用的前提:1.只能是使用SqlCommand连接到SqlServer进行数据处理的过程,而不能用于SqlServer的CLR扩展功能支持.2.提交SqlCommand进行查询前必须确保CommandText不能为null或者空白,因为常规情形下这一步会被SqlCommand类进行检查,然而使用此这个类后这一步被跳过了.在本人所做测试中,如不考虑查询语句本身所需消耗的时间,使用这个类对SqlCommand的查询效率至少提升10倍.欢迎讨论和交流.代码中都有注释,其它的废话懒得说了, 呵呵. /// <summary> /// SqlCommand发射器,使用SqlComman 阅读全文

posted @ 2012-08-17 14:24 sumok 阅读(472) 评论(0) 推荐(0) 编辑

C#的Dictionary初步讨论与更佳的使用方法

摘要: 事实:不论是ArrayList,Hashtable,List<T>等几种集合,都离不开数组的实现,往简单方面理解,不妨认为这是一种"高级"的数组首先说说List:List<T>用起来十分方便,然而其实际上是对数组的一个包装,其要点为:List实例创建时会初始化一个数组与一个包含当前列表元素数量的标记,每当新的元素加入时标记增加1,如果数组长度不够,会重新初始化一个新的长度为原有数组2倍的新数组,再将原有数组的元素复制到新数组,然后用新的数组替代原有的数组.接着说Dictionary,Dictionary对实际数据的维护与List的原理是类似的,不过他 阅读全文

posted @ 2012-08-17 01:55 sumok 阅读(530) 评论(0) 推荐(0) 编辑

2012年7月27日 #

一个用于屏蔽中国电信垃圾广告的Chrome扩展

摘要: 最近一段时间,页面上不断出现各种各样的垃圾广告信息。而我的ADBlocker居然视而不见。这些垃圾广告插入后有时候有一个非常可恶的行为,有可能因为广告代码不兼容我想要访问的真实页面,弄得我点击页面上的链接点来点去就是没有反应,总是要我下意思的重新刷新一下才行。我开始以为是Chrome崩溃了,一两次也就算了,可是接下来几天老是这样,心里有点想骂Google的冲动:唉,这浏览器版本一上去,功能越来越多,稳定性却越来越差了。随着重新刷新的次数越来越多,我心里越来越堵得慌,可是我也随即发现了规律,首先这应该不是chrome的崩溃,因为出现这种情形的时候浏览器本身的快进刷新功能正常的,而不是程序毫无响应 阅读全文

posted @ 2012-07-27 22:03 sumok 阅读(1097) 评论(6) 推荐(2) 编辑

2011年11月9日 #

MS .Net的一个BUG?

摘要: .Net V4下面的Buffer类封装了这么一个方法,如果留意注释部分,可以发现这一句不仅导致没有复制正确的数据,而且有可能溢出。正确的写法应该是将这两行代码调整到下一行。[ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success), ForceTokenStabilization, SecurityCritical]internal static unsafe void memcpyimpl(byte* src, byte* dest, int len){ if (len >= 0x10) { ... 阅读全文

posted @ 2011-11-09 21:41 sumok 阅读(1114) 评论(2) 推荐(0) 编辑

导航