多线程--synchronized同步方法

Posted yaobiluo

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程--synchronized同步方法相关的知识,希望对你有一定的参考价值。

   使用synchronized关键字修饰一个方法, 该方法中所有的代码都是同步的

/*
* 非静态同步函数的锁是:this
* 静态的同步函数的锁是:字节码对象   .class 文件
*/

 

public class demon_syn2 
    public static void main(String[] args) 
        final printer2 p = new printer2();    // 匿名内部类 在使用它所在方法的局部变量时,该变量必须用final修饰
      new Thread()
            public void run() 
                while(true)
                    p.print1();
                
            
        .start();
        new Thread()
            public void run() 
                while(true)
                    p.print2();
                
            
        .start();
    

class printer2
    demo1 d2 = new demo1();
    public synchronized void print1()        
        System.out.print("黑");
        System.out.print("马");
        System.out.print("程");
        System.out.print("序");
        System.out.print("员");
        System.out.print("\r\n");        
    
    public synchronized void print2()        
        System.out.print("传");
        System.out.print("智");
        System.out.print("播");
        System.out.print("客");
        System.out.print("\r\n");        
    


class demo1
    

 

以上是关于多线程--synchronized同步方法的主要内容,如果未能解决你的问题,请参考以下文章

Java多线程-synchronized同步方法及同步块简述

多线程的同步

Java多线程-synchronized同步方法

Java多线程同步 synchronized 关键字的使用

java多线程——锁机制synchronized(同步方法)

多线程--synchronized同步方法