多线程——死锁
Posted whx20100101
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了多线程——死锁相关的知识,希望对你有一定的参考价值。
多线程死锁的简单使用:
public class MyLock{ public static final Object locka=new Object(); public static final Object lockb=new Object(); public static final Object lockc=new Object(); public static final Object lockd=new Object(); }
package day_12_01_Thread; /** * 死锁的情况 * * @author Administrator * */ public class TestSynchronized implements Runnable { public static void main(String[] args) { TestSynchronized s = new TestSynchronized(); Thread t1 = new Thread(s); Thread t2 = new Thread(s); t1.start(); t2.start(); } @Override public void run() { int i = 0; while (true) { if (i % 2 == 0) { synchronized (MyLock.locka) { System.out.println("if.......locka"); synchronized (MyLock.lockb) { System.out.println("if ...........lockb"); } } } else { synchronized (MyLock.lockb) { System.out.println("else..........lockb"); synchronized (MyLock.locka) { System.out.println("else..........locka"); } } } i++; } } }
以上是关于多线程——死锁的主要内容,如果未能解决你的问题,请参考以下文章