2011-02-16 14:37 by Clingingboy, 136 visits, 网摘, 收藏, 编辑
摘要: 一.ASCII 参照标准ASCII表,其只支持128个字符 http://baike.baidu.com/view/15482.htm MSDN示例代码 输出:二.Unicode UTF-8 编码将每个码位表示为一个由 1 至 4 个字节组成的序列 应尽量使用该编码,其经过.net优化 参考:http://baike.baidu.com/view/40801.htm示例:输...
阅读全文
2011-02-13 22:25 by Clingingboy, 173 visits, 网摘, 收藏, 编辑
摘要:  一.可将多个对象序列化到一个流中 注意点:Formatter类型必须相同,序列化和反序列化顺序要相同这样就不用把多个对象序列化到多个流当中了.二.控制序列化和反序列化Name...
阅读全文
2011-02-12 15:07 by Clingingboy, 190 visits, 网摘, 收藏, 编辑
摘要:  一.关于装箱与拆箱 看这两篇文章 http://www.cnblogs.com/mqsuper/archive/2008/08/12/1265520.html http://www.cnblogs.com/wjiang/archive/2010/12/29/1920474.html 需要注意的点 尽量使用泛型集合 方法传参数时注意数据类型,减少装箱次数 结构体需要整...
阅读全文
2010-12-20 23:27 by Clingingboy, 256 visits, 网摘, 收藏, 编辑
摘要: 1.问题 委托可以直接异步进行(BeginInvoke),而不用再开线程(Thread),实质是一样的直接执行委托第一次异步执行IsCompleted属性用于判断异步是否执行完毕.这里用...
阅读全文
2010-12-07 16:29 by Clingingboy, 251 visits, 网摘, 收藏, 编辑
摘要: 虽然文章很少,但还是有的.引用一下 http://www.codeproject.com/KB/cs/WeakEvents.aspx http://www.cnblogs.com/ricki...
阅读全文
2010-12-06 11:00 by Clingingboy, 784 visits, 网摘, 收藏, 编辑
摘要: 即位于System.Collections命名空间下的集合,如Hashtable,ArrayList,Stack,Queue等.其均提供了线程同步的一个实现 集合线程同步的问题 与预期结果不...
阅读全文
2010-11-23 11:10 by Clingingboy, 471 visits, 网摘, 收藏, 编辑
摘要: PathGeometry可以创建任意的2D图形形状。 其内部通过PathSegment集合来实现 如画2个三角形 外边框和笔刷均由Path提供,Geometry只负责绘制形状为简化...
阅读全文
2010-11-19 10:58 by Clingingboy, 175 visits, 网摘, 收藏, 编辑
摘要: 魔兽世界组队下副本 下副本一般都要找5个人,一般玩家都在副本门口等,然后等待其他玩家跑过来 即玩家在做两个动作 1.跑到副本门口 2.等5个人到齐了,然后进副本. 如果玩家先...
阅读全文
2010-11-19 10:22 by Clingingboy, 299 visits, 网摘, 收藏, 编辑
摘要: 多线程编程(1) 多线程编程(2) 多线程编程(3) 多线程编程(4) 多线程编程(5)WaitEvent 多线程编程(6)原子操作 多线程编程(7)Semaphore信号...
阅读全文
2010-11-18 14:16 by Clingingboy, 304 visits, 网摘, 收藏, 编辑
摘要: .net有很多的计时器 System.Threading.Timer 这个Timer属于操作系统内部实现,最轻量级,以委托方式实现.这种对象要记得调用Dispose方法释放 Syst...
阅读全文
2010-11-18 13:36 by Clingingboy, 207 visits, 网摘, 收藏, 编辑
摘要: 之前有说过挤公交车的例子,因为只能上前门,而前门只有一个,所以人只能一个一个上,若不规范的公交车前后门都可以上,那么资源就是2个了,那么怎么做呢? 如果资源有多个的话,则可以采用Se...
阅读全文
2010-11-18 11:23 by Clingingboy, 355 visits, 网摘, 收藏, 编辑
摘要: 不能中断的任务(原子操作) 有些任务是不能被中断的,比如上厕所,难道你上到一半,别人说很急你就让给他了?不可能,必须完事才行。 不管你多快任务只能一个一个做 计算机虽是多线程,但...
阅读全文
2010-11-17 17:31 by Clingingboy, 297 visits, 网摘, 收藏, 编辑
摘要: 还是线程同步问题. 餐馆吃菜 即假设3个线程同步进行,但必须是有序进行的,不然线程就会错乱。比如 厨师烧菜 服务员端菜 顾客吃菜 上面的事情必须按照1,2,3的顺序来完成,意思即3...
阅读全文
2010-11-16 17:51 by Clingingboy, 211 visits, 网摘, 收藏, 编辑
摘要: 挤公交车(锁操作) 大部分人都做过公交车,公交车的规则是前门上后门下 由于车多人少,所以大家都会抢着上公交车,实际则是抢前车门的位置,但前车门只有一个,人还是得一个一个上.无法同一...
阅读全文
2010-11-16 15:46 by Clingingboy, 211 visits, 网摘, 收藏, 编辑
摘要: 传递参数 线程管理(线程池)如果有100个任务,则创建100个线程,如任务有轻重之分,一个任务完成后可以继续做其他事情,而不必要创建多余的线程.线程池内部提供了管理线程的机制,在大部...
阅读全文
2010-11-16 11:32 by Clingingboy, 275 visits, 网摘, 收藏, 编辑
摘要: 线程自身阻塞 线程由于某些原因,可以停下一段时间即调用Sleep方法 妈妈给女儿削梨(Join) 1.妈妈削梨(thread1) 2.女...
阅读全文
2010-11-15 17:50 by Clingingboy, 553 visits, 网摘, 收藏, 编辑
摘要:为了以后忘记以后可以再看,所以记录下. 主线程 程序开始后将有一个主线程,即 一个简单的示例,阻塞当前线程创建一个线程这里创建了2个线程,然后调用Start方法启动线程.阻塞内部线程(非主线程)...
阅读全文
2010-08-26 23:53 by Clingingboy, 294 visits, 网摘, 收藏, 编辑
摘要:早期绑定 即定义了强类型 分两种方式 1.使用工具自动生成 1.1添加引用,则自动声明命名空间 1.2运行TlbImp命令来声明,可修改命名空间 2.手动编写,可以使用 可调用部分com接口,无...
阅读全文
2010-08-26 23:52 by Clingingboy, 304 visits, 网摘, 收藏, 编辑
摘要:处理字符串的函数(ANSI和UniCode版本) 非托管函数后缀名A表示ANSI,W表示宽字符(Unicode),如GetUserName有GetUserNameA和GetUserNameW p/in...
阅读全文
2010-08-26 23:50 by Clingingboy, 637 visits, 网摘, 收藏, 编辑
摘要:嵌套结构体 复杂的数据类型往往结构体中还有结构体,即嵌套结构体,也可以说是复杂类型.如下定义Person中的name属性被定义成IntPtr, 测试代码 1.使用IntPtr 定义结构体分析如下代码片...
阅读全文
2010-08-26 23:49 by Clingingboy, 389 visits, 网摘, 收藏, 编辑
摘要:一.字符串封送 与传值没多大区别,内存释放也分两种,自动和手动,不再介绍 1.托管结构与函数2.非托管函数 3.测试 4.封送字符串数组 定义函数 测试 其他字段封送以MarshalAs标签来封送 如...
阅读全文
2010-08-26 23:47 by Clingingboy, 346 visits, 网摘, 收藏, 编辑
摘要:除了简单的数据类型传值之外,还可以传递自定义的结构体 传参 一.同时定义非托管和托管的结构体在托管代码中,需要注意一下几点 1.以StructLayout 来标记此结构体,以Sequential来指...
阅读全文
2010-08-26 23:45 by Clingingboy, 221 visits, 网摘, 收藏, 编辑
摘要:使用Unicode传递 一.定义托管函数第一个参数是传入的参数,第二个是输出的. 注意 1.String是不可变类型,const wchar_t* inString 2.wchar_t*为Unicod...
阅读全文
2010-06-23 10:19 by Clingingboy, 428 visits, 网摘, 收藏, 编辑
摘要: MEF为.net 4.0中默认的容器.以比较的方式来学习此框架.看看有没新概念. 步骤 1.注册容器对象 2.加载注册对象(尚未实例化) 3.创建容器 4.从容器中取对象 5.创建策略...
阅读全文
2010-06-10 23:32 by Clingingboy, 300 visits, 网摘, 收藏, 编辑
摘要:如下示例类1.以属性填充方式进行2.以构造函数填充以此构造函数创建对象有如下缺点(1)必须4个参数全部输入(不考虑c# 4.0缺省参数),必须重新构建新构造函数,如(2)构造函数一些容易造成混淆有人说...
阅读全文
2010-06-10 12:56 by Clingingboy, 405 visits, 网摘, 收藏, 编辑
摘要:也称为反Semaphore 作用:统计其他线程结束工作,监听计数为0时,触发操作.与Semaphore形成对比,Semaphore有最大资源数,当计数为0时(即资源不够用时)则阻塞线程1.Semaph...
阅读全文
2010-06-10 10:21 by Clingingboy, 384 visits, 网摘, 收藏, 编辑
摘要:概念: http://baike.baidu.com/view/1250961.htm?fr=ala0_1_1 http://blog.csdn.net/wzhwho/archive/2009/05/...
阅读全文
2010-06-09 22:59 by Clingingboy, 460 visits, 网摘, 收藏, 编辑
摘要:感谢作者http://www.cnblogs.com/anytao/archive/2009/10/29/must_net_33.html http://www.cnblogs.com/me-sa/archive/2010/05/25/lazy-initialization-fx4.html .net也有ThreadLocal了 http://www.cnblogs.com/tmrcp/archi...
阅读全文
2010-06-09 19:06 by Clingingboy, 261 visits, 网摘, 收藏, 编辑
摘要:感谢作者,辛苦:) .NET 4 并行(多核)编程系列之一入门介绍 .NET 4 并行(多核)编程系列之二 从Task开始 .NET 4 并行(多核)编程系列之三 从Task的取消 .NET 4 并行...
阅读全文
2010-06-09 17:02 by Clingingboy, 416 visits, 网摘, 收藏, 编辑
摘要:功能:动态返回数据结构,可当临时数据结构2.比较以上两个对象参数相同(1)调用默认的Equals方法结果输出为True(2)使用IStructuralEquatable,这个接口为新增,需要一个实现I...
阅读全文
2010-05-15 18:14 by Clingingboy, 1462 visits, 网摘, 收藏, 编辑
摘要:PV原语的含义 P操作和V操作是不可中断的程序段,称为原语。PV原语及信号量的概念都是由荷兰科学家E.W.Dijkstra提出的。信号量sem是一整数,sem大于等于零时代表可供并发进程使用的资源实...
阅读全文
2010-05-13 15:53 by Clingingboy, 807 visits, 网摘, 收藏, 编辑
摘要:(1) 没问题(2)换成线程顺序出错了 (3)使用读写锁操作ReaderWriterLockSlim使用EnterWriteLock锁定写操作,恢复正常,必须手动退出锁模式,否则将会永远独占ExitWriteLock(4)设置锁超时时间使用Try方法是可以设置锁时间,如果超时的话,则继续执行,但此时则未进入锁定状态,无法用ExitWriteLock退出,可以用RecursiveWriteCount...
阅读全文
2009-08-06 09:37 by Clingingboy, 446 visits, 网摘, 收藏, 编辑
摘要:1.Set 无序不重复对象 如ISet 2.List 可按位索引对象 如IList 3.Map 键值对象,如HashTable 4.Bag 可重复对象 如IList 5.idbag 示例 1.Set<class name="A" table="a" lazy="false"> <id name="Id" column="id" unsaved-value="null"> &...
阅读全文