2011年9月29日
摘要: 今天有个同事问我Thread的Interrupe方法,这个方法用于终止另一个正在等待(Sleep/Wait/Join)状态的线程,如果那个线程未处于等待状态,则等到下次进入等待状态时再抛出。 这个方法的平时用的机会其实并不大,由于需要线程处于等待状态,很大程度上限制了使用的机会,因此问了下同事实际的使用场景,原来是某些线程进入了长时间的Sleep状态,而在某些情况下,可能某个任务发现可以取消其他一系列的任务时,需要尽快退出这些任务。这个时候使用Interrupe方法固然可以实现,不过显然也不太优雅,而且也更容易在未期待的地方抛异常,使程序进入不可控制的状态。 那么更优雅,更可控制的方法... 阅读全文
posted @ 2011-09-29 13:06 Zhenway 阅读(3734) 评论(0) 推荐(0) 编辑