并发线程基础(一)

来源:互联网 发布:淘宝欢迎语大全 编辑:程序博客网 时间:2024/05/23 13:05

一、多个线程多个锁(lock)

概念:每个线程拿到自己的锁之后,获取线程锁之后,执行synchronized方法内的内容。

     (一)synchronized 重入

         概念:我比较喜欢通过自己的语言去记住和简化概念,重入:也叫“递归锁”,指同一个线程的外层方法获得锁之后,该方法里面调用修饰锁的方法,仍然可以获取锁,相互不受影响的。

          语言话:同个类中带synchronized的方法里面能调用另外修饰的synchronized方法;流程是不会受影响的。

** *  * @author FuLX * @2017-7-4 下午4:25:45 */public class Reentrant {/*添加synchronized修饰*/public synchronized void function_01() {System.out.println("------function_01-------");function_02();}public synchronized void function_02() {System.out.println("------function_02-------");function_03();}public synchronized void function_03() {System.out.println("------function_03-------");}public static void main(String[] args) {final Reentrant rt = new Reentrant();/*实例个对象*/Thread thread = new Thread(new Runnable() {  /*创建线程*/@Overridepublic void run() {rt.function_01();}});thread.start();/*启动线程*/}}

结果输出:

------function_01-------------function_02-------------function_03-------


原创粉丝点击