请举例说明Java的并发编程,比如线程池的应用。

原创 逃离我推掉我的手 2025-03-17 11:12 18阅读 0赞

在Java中,并发编程主要是利用多核处理器的优势,同时处理多个任务。以下是一个使用线程池的例子:

  1. 创建一个简单的任务类(Task):
  1. public class Task implements Runnable {
  2. private String name;
  3. public Task(String name) {
  4. this.name = name;
  5. }
  6. @Override
  7. public void run() {
  8. System.out.println("Running task: " + name);
  9. // 这里可以执行一些耗时的操作
  10. }
  11. }
  1. 创建一个线程池(ThreadPoolExecutor):
  1. public class ThreadPoolExample {
  2. private static final int THREAD_POOL_SIZE = 10; // 根据实际情况设置
  3. public static void main(String[] args) {
  4. // 创建任务列表
  5. List<Task> tasks = new ArrayList<>();
  6. for (int i = 0; i < 50; i++) { // 假设每个任务都需要执行50次
  7. String taskName = "Task" + i;
  8. Task task = new Task(taskName);
  9. tasks.add(task);
  10. }
  11. // 创建线程池并提交任务
  12. ExecutorService executor = Executors.newFixedThreadPool(THREAD_POOL_SIZE));
  13. for (Task task : tasks) {
  14. executor.submit(task);
  15. }
  16. // 关闭线程池
  17. executor.shutdown();
  18. while (!executor.isTerminated())) {
  19. // 等待所有任务完成
  20. }
  21. }
  22. }

这个例子中,我们创建了一个固定大小的线程池(ThreadPoolExecutor)来执行一系列的任务。每个任务都是一个Runnable实例,提交给线程池后会被并发执行。最后,我们关闭线程池以释放资源。

文章版权声明:注明蒲公英云原创文章,转载或复制请以超链接形式并注明出处。

发表评论

表情:
评论列表 (有 0 条评论,18人围观)

还没有评论,来说两句吧...

相关阅读