摘要:
上节我们提到了多线程共享内存的两个问题,一个是竞态条件,另一个是内存可见性,我们提到,解决这两个问题的一个方案是使用synchronized关键字,本节就来讨论这个关键字。 用法 synchronized可以用于修饰类的实例方法、静态方法和代码块,我们分别来看下。 实例方法 上节我们介绍了一个计数的 阅读全文
摘要:
在之前的章节中,我们都是假设程序中只有一条执行流,程序从main方法的第一条语句逐条执行直到结束。从本节开始,我们讨论并发,在程序中创建线程来启动多条执行流,并发和线程是一个复杂的话题,本节,我们先来讨论Java中线程的一些基本概念。 创建线程 线程表示一条单独的执行流,它有自己的程序执行计数器,有 阅读全文