摘要: http://blog.csdn.net/hsuxu/article/details/8962296 阅读全文
posted @ 2015-03-07 22:46 hnucdj 阅读(116) 评论(0) 推荐(0)
摘要: http://www.infoq.com/cn/articles/netty-high-performance/ 阅读全文
posted @ 2015-03-07 21:35 hnucdj 阅读(105) 评论(0) 推荐(0)
摘要: ClassNotFoundException发生在装入阶段。当应用程序试图通过类的字符串名称,使用常规的三种方法装入类,但却找不到指定名称的类定义时就抛出该异常。NoClassDefFoundError: 当目前执行的类已经编译,但是找不到它的定义时也就是说你如果编译了一个类B,在类A中调用,编译完... 阅读全文
posted @ 2015-02-12 16:17 hnucdj 阅读(3832) 评论(0) 推荐(0)
摘要: 1、这两个方法来自不同的类分别是,sleep来自Thread类,和wait来自Object类。sleep是Thread的静态类方法,谁调用的谁去睡觉,即使在a线程里调用了b的sleep方法,实际上还是a去睡觉,要让b线程睡觉要在b的代码中调用sleep。2、最主要是sleep方法没有释放锁,而wait方法释放了锁,使得其他线程可以使用同步控制块或者方法。sleep不出让系统资源;wait是进入线程等待池等待,出让系统资源,其他线程可以占用CPU。一般wait不会加时间限制,因为如果wait线程的运行资源不够,再出来也没用,要等待其他线程调用notify/notifyAll唤醒等待池中的所有线程 阅读全文
posted @ 2014-02-19 17:58 hnucdj 阅读(166) 评论(0) 推荐(0)
摘要: 在软件产品特别是大容量通信系统的研发过程中,线程安全的重要性是不言而喻的。通常我们会使用synchronized 这样的同步关键字来做线程同步.却忽略了这样做也会面临许多的问题,比如synchronized关键字同步方法\代码块等同步监视器只能是对像,而不是把一段代码或是函数当作锁。如果我们的代码对同步方法的类再实例化一次的时候,或者代码不注意引起这个类多次实例化了的时候并不能做到线程同步.(当然我们可以通过类同步来纠正,但是这样做无疑扩大了同步的范围,在系统并发量要求大的情况下,显然不合适)所以了这种同步方式在简单的场情下可能不会觉察出什么问题,但是并发量大时在性能下必然是受影响的。就个人理 阅读全文
posted @ 2014-02-19 17:31 hnucdj 阅读(269) 评论(0) 推荐(0)