并发编程:Java的线程池使用示例

原创 「爱情、让人受尽委屈。」 2024-10-13 05:15 120阅读 0赞

在Java中,线程池是一种复用线程的方式,可以提高程序的运行效率。以下是一个简单的线程池使用示例:

  1. 导入相关库:

    1. import java.util.concurrent.ExecutorService;
    2. import java.util.concurrent.Executors;
  2. 创建线程池,这里我们使用一个固定大小的线程池(ThreadPoolExecutor):

    1. ExecutorService executor = Executors.newFixedThreadPool(5); // 创建一个包含5个线程的线程池
  3. 将任务提交给线程池执行:

    1. // 提交任务到线程池
    2. executor.execute(new Runnable() {
    3. @Override
    4. public void run() {
    5. System.out.println("Thread is running ..."); // 这里模拟一个耗时的任务
    6. try {
    7. Thread.sleep(2000); // 模拟耗时任务,此处睡眠2秒
    8. } catch (InterruptedException e) {
    9. e.printStackTrace();
    10. }
    11. System.out.println("Thread has finished its task ...");
    12. }
    13. }));
  4. 线程池使用完成后,可以关闭线程池以释放资源:

    1. executor.shutdown(); // 关闭线程池
    2. while (!executor.isTerminated())) { // 检查是否有未完成的任务
    3. try {
    4. Thread.sleep(100); // 阻塞100毫秒,防止CPU浪费
    5. } catch (InterruptedException e) {
    6. e.printStackTrace();
    7. }
    8. }
    9. System.out.println("ExecutorService has been shut down ..."); // 确保任务已经全部执行完毕

以上就是一个简单的Java线程池使用示例。

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

发表评论

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

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

相关阅读

    相关 Java并发编程线示例

    在Java中,线程池是一种常用的管理线程的方式。它通过维护一组工作线程,并且根据请求动态添加或回收线程,以提高系统的并发处理能力。 以下是一个简单的线程池示例: ```ja