Java并发编程中的示例
Java 并发编程是现代软件开发中一个非常重要的领域,它允许开发者编写高效、响应快速的程序。以下是一些Java并发编程的示例。
线程同步
线程同步是避免多个线程同时访问共享资源的一种机制。以下是一个使用synchronized
关键字进行同步的示例:
public class Counter {
private int count = 0;
public synchronized void increment() {
count++;
}
public synchronized int getCount() {
return count;
}
}
线程池
线程池可以管理一组线程,从而避免为每个任务创建和销毁线程的开销。以下是一个简单的线程池实现:
import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;
public class ThreadPoolExample {
public static void main(String[] args) {
ExecutorService executor = Executors.newFixedThreadPool(5);
for (int i = 0; i < 10; i++) {
executor.submit(() -> System.out.println("Task " + i + " is running."));
}
executor.shutdown();
}
}
并发工具类
Java 提供了一些并发工具类,如 Semaphore
和 CyclicBarrier
,它们可以帮助我们更方便地实现并发控制。
import java.util.concurrent.Semaphore;
public class SemaphoreExample {
public static void main(String[] args) {
Semaphore semaphore = new Semaphore(3);
for (int i = 0; i < 10; i++) {
new Thread(() -> {
try {
semaphore.acquire();
System.out.println("Thread " + Thread.currentThread().getName() + " is running.");
semaphore.release();
} catch (InterruptedException e) {
e.printStackTrace();
}
}).start();
}
}
}
更多关于Java并发编程的内容,请参考本站Java并发编程教程。
相关图片
- Concurrency
- Java
- Thread
- ExecutorService
- Semaphore