public class Test extends Thread {
private int a = 0;
private int b = 0;
public static void main(String[] args) {
Test test = new Test();
for (int i = 0; i < 10; i++) {
Thread thread = new Thread(test, "thread-" + i);
thread.start();
}
}
public synchronized void doWrite() {
a++;
try {
sleep((int)(Math.random()*100));
}
catch (Exception e) {
}
b++;
try {
sleep((int)(Math.random()*100));
}
catch (Exception e) {
}
}
public synchronized void print() {
System.out.println("" + Thread.currentThread().getName() + ":a:" + a);
System.out.println("" + Thread.currentThread().getName() + ":b:" + b);
}
public void run() {
for (int i = 0; i < 5; i++) {
doWrite();
print();
}
}
}
输出结果是什么?
解决方案 »
- 一个小程序,求指正。。将扩展名为txt的文件的扩展名全部更名为back
- 我想在linuxpowerpc下面用java做一个系统软键盘我需要利用jni技术调用往系统里面写key的接口,如果哪位对这方面了解帮我下。
- 输出对象名。system.out.println(a); 是类名+哈希值 那么后边的哈希值是不是一样就是指向同一对象?
- java线程问题---怎么在一个类中获得另一个类(线程类)中的静态属性值!
- 一个菜鸟的练习题
- Java中取"yyyy-mm-dd hh:mm:ss"型当前时间,如何取呢?
- 我的数据库怎么联不上?
- 哪里可以下载到jbuilder8的升级包?
- 高手请进,来一同探讨一下关于JAVA的精确度的几个问题!!!!!!!
- java里面有FileAppender形式的log4j.xml吗?
- 一个比较复杂的问题
- 关于JAVA基础的,各位高手有空帮忙给看一下。谢了
thread-0:a:10
thread-0:b:10
thread-1:a:10
thread-1:b:10
thread-2:a:10
thread-2:b:10
thread-3:a:10
thread-3:b:10
thread-4:a:10
thread-4:b:10
thread-5:a:10
thread-5:b:10
thread-6:a:10
thread-6:b:10
thread-7:a:10
thread-7:b:10
thread-8:a:10
thread-8:b:10
thread-9:a:10
thread-9:b:10
thread-0:a:20
thread-0:b:20
thread-1:a:20
thread-1:b:20
thread-2:a:20
thread-2:b:20
thread-3:a:20
thread-3:b:20
thread-4:a:20
thread-4:b:20
thread-5:a:20
thread-5:b:20
thread-6:a:20
thread-6:b:20
thread-7:a:20
thread-7:b:20
thread-8:a:20
thread-8:b:20
thread-9:a:25
thread-9:b:25
thread-0:a:29
thread-0:b:29
thread-1:a:29
thread-1:b:29
thread-2:a:29
thread-2:b:29
thread-3:a:29
thread-3:b:29
thread-4:a:30
thread-4:b:30
thread-6:a:30
thread-6:b:30
thread-7:a:30
thread-7:b:30
thread-8:a:30
thread-8:b:30
thread-5:a:30
thread-5:b:30
thread-9:a:39
thread-9:b:39
thread-1:a:39
thread-1:b:39
thread-2:a:39
thread-2:b:39
thread-3:a:39
thread-3:b:39
thread-0:a:39
thread-0:b:39
thread-4:a:39
thread-4:b:39
thread-6:a:39
thread-6:b:39
thread-7:a:39
thread-7:b:39
thread-8:a:39
thread-8:b:39
thread-5:a:48
thread-5:b:48
thread-9:a:48
thread-9:b:48
thread-1:a:48
thread-1:b:48
thread-2:a:48
thread-2:b:48
thread-3:a:48
thread-3:b:48
thread-0:a:48
thread-0:b:48
thread-4:a:48
thread-4:b:48
thread-6:a:48
thread-6:b:48
thread-7:a:48
thread-7:b:48
thread-8:a:50
thread-8:b:50
thread-5:a:50
thread-5:b:50
thread-9:a:50
thread-9:b:50
thread-0:a:1
thread-0:b:1
thread-0:a:2
thread-0:b:2
thread-0:a:3
thread-0:b:3
thread-0:a:4
thread-0:b:4
thread-0:a:5
thread-0:b:5
thread-1:a:6
thread-1:b:6
thread-1:a:7
thread-1:b:7
thread-1:a:8
thread-1:b:8
thread-1:a:9
thread-1:b:9
thread-1:a:10
thread-1:b:10
thread-2:a:11
thread-2:b:11
thread-2:a:12
thread-2:b:12
thread-2:a:13
thread-2:b:13
thread-2:a:14
thread-2:b:14
thread-2:a:15
thread-2:b:15
thread-3:a:16
thread-3:b:16
thread-3:a:17
thread-3:b:17
thread-3:a:18
thread-3:b:18
thread-3:a:19
thread-3:b:19
thread-3:a:20
thread-3:b:20
thread-4:a:21
thread-4:b:21
thread-4:a:22
thread-4:b:22
thread-4:a:23
thread-4:b:23
thread-4:a:24
thread-4:b:24
thread-4:a:25
thread-4:b:25
thread-5:a:26
thread-5:b:26
thread-5:a:27
thread-5:b:27
thread-5:a:28
thread-5:b:28
thread-5:a:29
thread-5:b:29
thread-5:a:30
thread-5:b:30
thread-6:a:31
thread-6:b:31
thread-6:a:32
thread-6:b:32
thread-6:a:33
thread-6:b:33
thread-6:a:34
thread-6:b:34
thread-6:a:35
thread-6:b:35
thread-7:a:36
thread-7:b:36
thread-7:a:37
thread-7:b:37
thread-7:a:38
thread-7:b:38
thread-7:a:39
thread-7:b:39
thread-7:a:40
thread-7:b:40
thread-8:a:41
thread-8:b:41
thread-8:a:42
thread-8:b:42
thread-8:a:43
thread-8:b:43
thread-8:a:44
thread-8:b:44
thread-8:a:45
thread-8:b:45
thread-9:a:46
thread-9:b:46
thread-9:a:47
thread-9:b:47
thread-9:a:48
thread-9:b:48
thread-9:a:49
thread-9:b:49
thread-9:a:50
thread-9:b:50 可结果。。
public void run() {
synchronized(this){
for (int i = 0; i < 5; i++) {
doWrite();
print();
}
}
}