• 多线程优先级及同步


    6、线程的优先级
      Thread.MIN_PRIORITY = 1
      Thread.NORM_PRIORITY = 5
      Thread.MAX_PRIORITY = 10
    7、线程同步
      ①使用同步代码块
        

    public class ThreadDemo {

      public static void main(String[] args) {

        MyThread thread1=new MyThread();

        new Thread(thread1).start();

        new Thread(thread1).start();

        new Thread(thread1).start();

        new Thread(thread1).start();

      }

    }

    class MyThread implements Runnable{

      private int ticket=5;

      public MyThread(){

      }

    public void run(){

        for(int i=0;i<100;i++){

          synchronized (this) {

            if(ticket>0){

            try {

            Thread.sleep(1000);

            } catch (InterruptedException e) {

            e.printStackTrace();

            }

        System.out.println("卖出了第"+ticket--+"张票");

            }

        }

      }

      }

    }

      ②使用同步方法

    public class ThreadDemo {

        public static void main(String[] args) {

          MyThread thread1=new MyThread();

          new Thread(thread1).start();

          new Thread(thread1).start();

          new Thread(thread1).start();

          new Thread(thread1).start();

        }

    }

    class MyThread implements Runnable{

        private int ticket=5;

        public void run(){

          for(int i=0;i<100;i++){

          this.sale();

        }

    }

    public synchronized void sale(){

        if(ticket>0){

        try {

        Thread.sleep(1000);

        } catch (InterruptedException e) {

        e.printStackTrace();

        }

        System.out.println("卖出了第"+ticket--+"张票");

        }

      }

    }

    8、wait 和 sleep 比较

      ①wait别的线程可以访问锁定对象,它是Object类的方法,注意:调用wait方法的时候必须锁定该对象

      ②sleep时别的线程不可以访问锁定对象,它是Thread类的方法

  • 相关阅读:
    【图论】拓扑排序应用
    【图论】广度优先搜索和深度优先搜索
    最小生成树-Prim算法和Kruskal算法
    最短路径—Dijkstra算法和Floyd算法
    【图论】信手拈来的Prim,Kruskal和Dijkstra
    javascript获取iframe框架中页面document对象,获取子页面里面的内容,iframe获取父页面的元素,
    javascript 中的 true 或 false
    解决IIS7该问.svc文件的错误问题
    mysql常用函数
    异步上传文件,ajax上传文件,jQuery插件之ajaxFileUpload
  • 原文地址:https://www.cnblogs.com/rrb520/p/5272417.html
Copyright © 2020-2023  润新知