并发编程模型举个例子 Java代码实现
时间: 2023-10-23 19:10:57 浏览: 95
Java并发编程实战中的例子.zip
Java中常用的并发编程模型包括多线程、线程池、并发集合、锁等。下面给出一个简单的例子,使用多线程模型实现一个计数器。
```java
public class Counter {
private int count = 0;
public void increment() {
count++;
}
public int getCount() {
return count;
}
}
public class Main {
public static void main(String[] args) throws InterruptedException {
Counter counter = new Counter();
Thread t1 = new Thread(() -> {
for (int i = 0; i < 100000; i++) {
counter.increment();
}
});
Thread t2 = new Thread(() -> {
for (int i = 0; i < 100000; i++) {
counter.increment();
}
});
t1.start();
t2.start();
t1.join();
t2.join();
System.out.println(counter.getCount()); // 200000
}
}
```
在这个例子中,我们定义了一个计数器Counter,其中count变量是共享变量。我们创建了两个线程t1和t2,它们分别对count进行100000次加1操作。在主线程中,我们先启动t1和t2线程,然后等待它们执行完毕,最后输出count的值。
由于count是共享变量,多个线程同时对它进行修改,可能会导致线程安全问题。为了避免这种问题,我们可以使用锁或者并发集合等机制来保证线程安全。
阅读全文