摘要:
Java中调用wait方法或者sleep方法都可以让线程进入waitint或者time-waiting状态,但是它们还是 有所不同的: 如何证明呢?我设计了如下代码来证明: 输出结果: 该段代码的原理是先执行线程A,在进入synchonized之后调用wait方法,这个时候线程B也开始执行了; 而如 阅读全文
摘要:
在实际开发过程中,我们有时候会遇到主线程调用子线程,要等待子线程返回的结果来进行下一步动作的业务。 那么怎么获取子线程返回的值呢,我这里总结了三种方式: Entity类 主线程等待(这个一看代码便知晓,没什么问题) Join方法阻塞当前线程以等待子线程执行完毕 通过实现Callable接口 这里又分 阅读全文
摘要:
之前一篇随笔介绍了二分查找的最最基本的实现,该实现要求待查找的数据是有序且不存在重复元素的数组。 而今天我们就要介绍二分查找的变体问题,待查找数据是有序但是存在重复元素的数组,主要有以下几个问题: 这个呢,就要比不存在重复元素的数组稍微复杂一些,但也不难,只要我们能够找好临界条件就事半功倍了。 原理 阅读全文