写个简单的例子
public class TestThread implements Runnable {
public static int count = 0;
@Override
public void run() {
for (int i = 0; i < 100_0000; i++) {
count ++;
}
System.out.println("end...");
}
public static void main(String[] args) throws InterruptedException {
Runnable runnable = new TestThread();
for (int i = 0; i < 10; i++) {
Thread thread = new Thread(runnable);
thread.start();
}
Thread.sleep(60000);
System.out.println(TestThread.count);
}
}
看输出结果
end...
end...
end...
end...
end...
end...
end...
end...
end...
end...
8660986

该博客通过一个简单的Java程序展示了多线程环境下计数器同步的问题。代码创建了10个线程同时增加一个静态变量`count`,但最终结果并非预期的100万,揭示了并发编程中可能出现的竞态条件。博主讨论了线程安全和同步机制的重要性,为读者提供了一个理解多线程同步的经典实例。
38

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



