摘要: 一:什么是弱引用 了解弱引用之前,先了解一下什么是强引用 例如 : Object obj=new Object(); 就是一个强引用,内存分配一份空间给用以存储Object数据,这块内存有一个首地址,也就是obj所保存的数据,内存分配的空间中不仅仅保存着Object对象信息,还保存着自己(Object本身)被引用的次数。 当一个对象被强引用的形式创建的时候,本身被引用的次数已经为1. 接着Object o=obj; 这句代码执行之后,obj指向的Object的存储空间已经被引用了2次,所以Object保存的被引用数值为2. 总结:强引用最终导致的结果就是被引用的对象的被引用次数+1; ... 阅读全文
posted @ 2014-03-11 15:46 higirle 阅读(2578) 评论(0) 推荐(1) 编辑
摘要: 多线程通信1. 当线程之间有先后的依赖关系时,属于线程之间的通信问题。也就是后一个线程要等待别的一个或多个线程全部完成,才能开始下一步的工作。可以使用:WaitHandle Class WaitHandle类作为基类来使用的,它允许多个等待操作。这个类封装了win32的同步处理方法。WaitHandle对象通知其他的线程它需要对资源排他性的访问,其他的线程必须等待,直到WaitHandle不再使用资源和等待句柄没有被使用。下面是从它继承来的几个类: AutoResetEvent:Notifies a waiting thread that an event has occurred. ... 阅读全文
posted @ 2014-03-11 15:13 higirle 阅读(3191) 评论(0) 推荐(0) 编辑