易截截图软件、单文件、免安装、纯绿色、仅160KB

java线程死锁例子

public class DealLockTest implements Runnable {
static String i = new String();
static String j = new String();
private String str = null;
public DealLockTest(String str) {
this.str = str;
}
public static void main(String[] args) {
new Thread(new DealLockTest("i")).start();
new Thread(new DealLockTest("j")).start();
}
public void run() {
if (str.equals("i")) {
synchronized (i) {
System.out.println(Thread.currentThread().getName()+":"+"i");
Thread.yield();
synchronized (j) {
System.out.println("i is over");
}
}
} else {
synchronized (j) {
System.out.println(Thread.currentThread().getName()+":"+"j");
Thread.yield();
synchronized (i) {
System.out.println("j is over");
}
}
}
}
}

线程何时发生死锁呢?
最简单的情况是当1个线程获得了资源A,当它再获得资源B时,就可以完成任务.而在它获得了A的时候
另一个线程获得了资源B,去抢资源A..此时,就发生了死锁
前提(共享资源(static),加锁(synchronized)).


相关文档:

Java中的类型转换


本作品采用知识共享署名-非商业性使用-相同方式共享 2.5 中国大陆许可协议进行许可。
无论在C/C++还是在Java,强制类型转换已经不是陌生的概念了。但是要想全面掌握Java中类型转换的要点可不那么简单,本文将带领大家一同了解有关Java类型转换的所有要点。
数值类型的类型转换
众所周知,Java有两种数据类型:基本数据 ......

Java iText 动态 生成 PDF 文档 表格 中文问题

import java.awt.Color;
import java.io.FileOutputStream;
import com.lowagie.text.Cell;
import com.lowagie.text.Chapter;
import com.lowagie.text.Document;
import com.lowagie.text.Font;
import com.lowagie.text.Image;
import com.lowagie.text.List;
import com.lowagie.text.ListItem;
import com.lo ......

Java实训

 我们每个学期末都会进行将近一个月的实训,这次Java实训也即将结束,我选的课题是“个人网上银行系统”,运用了Struts,Hibernate和Spring框架,通过mvc设计模式。基本所有的功能都实现了,在实训中真的学到了很多知识,之间也遇到了很多问题,但都一一得到解决。我进一步了解了Struts的运行原理,马上面临 ......

Java Scanner NoSuchElementException

今天同学问我一个Java问题,代码结构如下:
Scanner scan = new Scanner(System.in);
scan.next();
scan.close();
scan = new Scanner(System.in);
scan.next(); 
当程序运行到第五行是会抛出java.util.NoSuchElementException
          at&nb ......

JAVA程序员面试32问

JAVA程序员面试32问
第一,谈谈final, finally, finalize的区别。
final 修饰符(关键字)如果一个类被声明为final,意味着它不能再派生出新的子类,不能作为父类被继承。因此一个类不能既被声明为 abstract的,又被声明为final的。将变量或方法声明为final,可以保证它们在使用中不被改变。被声明为final的变量必须在声 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号