• #大学#Java多线程学习02(线程同步)


    *所谓同步机制是指两个线程同时操作一个对象,应该保持对象数据的统一性和整体性。

    *Java语言中有两种同步形式,即同步方法和同步代码块。

    1,同步方法

    同步方法将访问这个资源的方法都标记为synchronized,这样在需要调用这个方法的线程执行完之前,其它调用该方法的线程都会被阻塞。

    synchronized void sum(){…}

    synchronized void max(){…}

    *创建两个线程的例子

    import java.util.logging.Level;
    import java.util.logging.Logger;

    public class SyncThread extends Thread {
        private char cha;
        public SyncThread(char cha){
            this.cha=cha;
        }
        public void run(){
            PrintClass.printch(cha);
            System.out.println();
        }
        public static void main(String[] args){
            SyncThread t1=new SyncThread('A');
            SyncThread t2=new SyncThread('B');
            t1.start();
            t2.start();
        }
    }
    class PrintClass{
        public static void printch(char cha){
            for(int i=0;i<5;i++){
                try {
                    Thread.sleep(1000);
                } catch (InterruptedException ex) {
                    Logger.getLogger(PrintClass.class.getName()).log(Level.SEVERE, null, ex);
                }
                System.out.print(cha);
            }
        }
    }

    *同步块

    Java语言中同步的设定不只应用于同步方法,也可以设置程序的某个代码段为同步区域。

    语法格式为:

    synchronized(someobject){…代码…}

     

  • 相关阅读:
    J2EE开发环境
    Java核心api
    SCJP (SUN认证Java程序员)
    蓝领”变“金领”
    阿飞正传
    高效项目的七个习惯转载
    写程序的一些感想和教训(转载)
    学习的过程也是迭代的过程
    管理的艺术
    怎样成为优秀的软件模型设计者?[精华]
  • 原文地址:https://www.cnblogs.com/rond/p/1918778.html
Copyright © 2020-2023  润新知