以下两个例子说明synchronized块的用法:
例1.9.4
class A {
public void disp() {
System.out.println("新线程马克-to-win启动:");
for (int i = 0; i < 10; i++) {
System.out.println(i);
try {
Thread.sleep(500);
} catch (Exception e) {
}
}
}
}
public class TestMark_to_win extends Thread {
A a;
public TestMark_to_win(A a) {
this.a = a;
}
public void run() {
a.disp();
}
public static void main(String[] args) {
A a = new A();
TestMark_to_win t1 = new TestMark_to_win(a);
TestMark_to_win t2 = new TestMark_to_win(a);
t1.start();
t2.start();
}
}
更多请见:https://blog.youkuaiyun.com/qq_44639795/article/details/103095628
本文通过具体示例展示了Java中synchronized块的使用方法。在多线程环境下,通过synchronized关键字确保同一时间只有一个线程可以执行特定代码段,从而避免了线程间的数据竞争问题。
932

被折叠的 条评论
为什么被折叠?



