zoukankan      html  css  js  c++  java
  • 启动器的学习

    一、核心思想

      

    二、启动流程

      

    三、依赖关系的代码

      

    四、重入锁的使用

      public class MyLock implements Lock {
        private boolean isLocked = false;
        Thread lockBy = null;
        int lockCount = 0;
        @Override
        public synchronized void lock() {
        Thread currentThread = Thread.currentThread();
        lockBy = Thread.currentThread();
        while (isLocked && lockBy != lockBy){
        try {
          wait();
        } catch (InterruptedException e) {
          e.printStackTrace();
        }
      }
      isLocked = true;
      lockBy = currentThread;
      lockCount++;
      }

      @Override
      public synchronized void unlock() {
      if (lockBy == Thread.currentThread()) {
        lockCount--;
        if (lockCount == 0) {
          notify();
        isLocked = false;
        lockCount = 0;
        }
       }
      }
      

    MyLock lock = new MyLock();
    public void a(){
    lock.lock();
    System.out.println("a");
    b();
    lock.unlock();
    }
    public void b(){
    lock.lock();
    System.out.println("b");
    lock.unlock();

    }
  • 相关阅读:
    FileWriter简单用法并记录日志
    jquery 替换元素函数
    jquery ajax应用
    jquery 操作对象和集合
    jquery 管理包装元素集合
    jQuery 过滤选择器
    @Html.Action()
    ASP.NET MVC之Html.RenderAction
    MVC5中路由新特性
    MVC5学习整理
  • 原文地址:https://www.cnblogs.com/liunx1109/p/11669079.html
Copyright © 2011-2022 走看看