zoukankan      html  css  js  c++  java
  • 写一个java死锁的demo

    package com.simon.study;
    /**
     * 线程死锁 一个线程要同时拥有两个对象的资源才能进行下一步操作;
     * @author: Simon
     * @date: 2017年7月29日 下午9:48:43
     */
    public class DeadLock implements Runnable{
      static Object o1=new Object(),o2=new Object();
      public int flag=1;
     
     
         public void run() {
               // TODO Auto-generated method stub
               System.out.println("flag***********"+flag);
               if(flag==1){
                    synchronized (o1) {
                          try {
                               Thread.sleep(500);
                          } catch (Exception e) {
                               // TODO: handle exception
                          }
                          synchronized (o2) {
                               System.out.println("这里线程1获取所有的线程权限");
                          }
                    }
                    
                    }
               if(flag==0){
                    synchronized (o2) {
                          try {
                               Thread.sleep(500);
                          } catch (Exception e) {
                               // TODO: handle exception
                          }
                          synchronized (o1) {
                               System.out.println("这里线程2获取所有的线程权限");
                          }
                    }
                    
               }
               }
         public static void main(String[] args){
               DeadLock deadLock1=new DeadLock();
               DeadLock deadLock2=new DeadLock();
               deadLock1.flag=1;
               deadLock2.flag=0;
               Thread r1=new Thread(deadLock1);
               Thread r2=new Thread(deadLock2);
               r1.start();
               r2.start();
         }
         }
     
  • 相关阅读:
    Ajax传值以及接受传值,@ResPonseBody 和 @RequestBody
    分页
    延迟加载
    mybatis的一级缓存和二级缓存
    拦截器的使用
    Session和Cookie
    逆向工程
    springmvc注解详解
    Java——变量
    Go通关04:正确使用 array、slice 和 map!
  • 原文地址:https://www.cnblogs.com/SimonHu1993/p/7257667.html
Copyright © 2011-2022 走看看