zoukankan      html  css  js  c++  java
  • classic problem: deadlock

    注意: 2个锁是调用关系的, 不是并列关系

    public class DeadLock {

        /**
         * @param args
         */
        public static void main(String[] args) {
            // TODO Auto-generated method stub
            final Object resource1 = "res1";
            final Object resource2 = "res2";
           
            Thread t1 = new Thread() {
                public void run() {
                    synchronized(resource1) {
                        System.out.println("Thread-1 :locked resource1");
                   
    //                    try {
    //                        Thread.sleep(50);
    //                    } catch (InterruptedException ie) {
    //                        ie.printStackTrace();
    //                    }
    //                   
                        synchronized(resource2) {
                            System.out.println("Thread-1 :locked resource2");
                        }
                    }
                   
                }
            };
           
            Thread t2 = new Thread() {
                public void run() {
                    synchronized(resource2) {
                        System.out.println("Thread-2 :locked resource2");
                   
    //                    try {
    //                        Thread.sleep(50);
    //                    } catch (InterruptedException ie) {
    //                        ie.printStackTrace();
    //                    }

                        synchronized(resource1) {
                            System.out.println("Thread-2 :locked resource1");
                        }
                    }
                }
            };
           
            t1.start();
            t2.start();
        }
    }

  • 相关阅读:
    [转]C#获取程序当前路径的方法
    [解决办法]未在本地计算机上注册“Mircosoft.Jet.OleDB.4.0”提供程序
    [解决办法]正在尝试使用已关闭或释放并且不再有效的 SPWeb 对象
    PowerShell学习笔记
    DNS
    在C#编程中,如何将Excel保存为2003的格式
    SAAS相关网络资源
    LCID及Culture Name列表
    Microsoft's naming conventions (微软命名规范)
    C#中如何结束Excel (Office)进程
  • 原文地址:https://www.cnblogs.com/tiechui/p/1893639.html
Copyright © 2011-2022 走看看