随笔分类 - 互联网并发编程
摘要:CountDownLatch实现原理简介: CountDownLatch内部维护一个计数器,计数器的值为待完成的任务数N,需要等待这N个任务完成的线程调用CountDownLatch的await()方法使自己进入休眠等待状态。 当某一个任务线程完成某一个任务后调用CountDownLatch的cou
阅读全文
摘要:上面程序结果是先打印完小明线程,在打印小东线程; 上面注释也大概说明了join方法的作用:在A线程中调用了B线程的join()方法时,表示只有当B线程执行完毕时,A线程才能继续执行。注意,这里调用的join方法是没有传参的,join方法其实也可以传递一个参数给它的,具体看下面的简单例子: 上面代码结
阅读全文
摘要:corePoolSize:核心池的大小 maximumPoolSize:线程池最大线程数,这个参数也是一个非常重要的参数,它表示在线程池中最多能创建多少个线程; keepAliveTime:表示线程没有任务执行时最多保持多久时间会终止。默认情况下,只有当线程池中的线程数大于corePoolSize时
阅读全文
摘要:创建Thread的子类 创建Thread子类的一个实例并重写run方法,run方法会在调用start()方法之后被执行。例子如下: public class MyThread extends Thread { public void run(){ System.out.println("MyThre
阅读全文
摘要:先补充一下概念:Java 内存模型中的可见性、原子性和有序性。 可见性: 可见性是一种复杂的属性,因为可见性中的错误总是会违背我们的直觉。通常,我们无法确保执行读操作的线程能适时地看到其他线程写入的值,有时甚至是根本不可能的事情。为了确保多个线程之间对内存写入操作的可见性,必须使用同步机制。 可见性
阅读全文
摘要:作者:严肃 链接:https://www.zhihu.com/question/19732473/answer/20851256 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 “阻塞”与"非阻塞"与"同步"与“异步"不能简单的从字面理解,提供一个从分布式系统角度的
阅读全文
浙公网安备 33010602011771号