Java多线程问题:同步与并发案例解析
在Java编程中,多线程主要涉及同步和并发两个概念。下面我们将通过几个实际案例来解析这两者。
同步案例:
- synchronized关键字:这是最基础的同步方式。
// 例一:简单线程同步
class Counter {
private int count;
public synchronized void increment() {
count++;
notifyAll(); // 当count值大于0时,通知所有等待的线程
}
public synchronized int getCount() {
return count;
}
}
并发案例:
- 多线程类:创建并管理多个独立执行的任务。
// 例二:使用Runnable实现并发
class ThreadTask implements Runnable {
private String message;
public ThreadTask(String message) {
this.message = message;
}
@Override
public void run() {
System.out.println("Thread Task: " + message);
}
}
// 创建并启动多线程任务
for (int i = 0; i < 5; i++) {
ThreadTask task = new ThreadTask("Message " + i));
new Thread(task).start();
}
通过以上的同步与并发案例,我们可以理解Java中如何使用synchronized关键字进行多线程同步,以及如何使用Runnable接口创建并管理并发任务。
还没有评论,来说两句吧...