java多任务并行处理
时间: 2023-11-10 16:02:29 浏览: 41
Java提供了多种方式来实现多任务并行处理,以下是一些常见的方法:
1. 线程(Thread):Java的基本并发构建块,可以使用Thread类或实现Runnable接口创建并启动线程。每个线程都是独立执行的,可以同时运行多个线程。
示例代码:
```java
class MyThread extends Thread {
public void run() {
// 线程执行的逻辑
}
}
public class Main {
public static void main(String[] args) {
MyThread thread1 = new MyThread();
MyThread thread2 = new MyThread();
thread1.start();
thread2.start();
}
}
```
2. 线程池(ThreadPoolExecutor):通过线程池可以管理和复用线程,避免频繁地创建和销毁线程,提高性能和资源利用率。
示例代码:
```java
ExecutorService executor = Executors.newFixedThreadPool(5);
for (int i = 0; i < 10; i++) {
Runnable worker = new MyRunnable();
executor.execute(worker);
}
executor.shutdown();
```
3. 并发集合类(ConcurrentHashMap、ConcurrentLinkedQueue等):Java提供了一些线程安全的集合类,可以在多线程环境中并发访问和修改数据,提高效率和线程安全性。
示例代码:
```java
ConcurrentMap<String, Integer> map = new ConcurrentHashMap<>();
map.put("key", 1);
int value = map.get("key");
ConcurrentLinkedQueue<Integer> queue = new ConcurrentLinkedQueue<>();
queue.offer(1);
int element = queue.poll();
```