zoukankan      html  css  js  c++  java
  • #大学#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){…代码…}

     

  • 相关阅读:
    要养成记录技术问题的习惯
    js排序方法
    阶乘算法练习
    简易的自定义滚动条加鼠标滑轮事件结合使用
    等虚线框的拖拽
    照片墙效果
    苹果导航菜单效果
    简易封装js库
    JQ 实现切换效果
    三级菜单
  • 原文地址:https://www.cnblogs.com/rond/p/1918778.html
Copyright © 2011-2022 走看看