线程池使用之ExecutorService

原创 2013年12月05日 14:57:32

1、场景:非周期性执行某一任务

2、文件处理类

import java.util.concurrent.ExecutorService;
import java.util.concurrent.Executors;

public class FileProcess
{
    //单例模式
    private static FileProcess instance = new FileProcess();
    
    public static FileProcess getInstance()
    {
        return instance;
    }
    
    private ExecutorService threadPool;
    
    //线程池中的线程数
    private int threadNum = 1;
    
    public void start()
    {
        //新建一个线程池
        threadPool = Executors.newFixedThreadPool(threadNum);
    }
    
    //关闭线程池
    public void stop()
    {
        if (null != threadPool)
        {
            threadPool.shutdown();
            threadPool = null;
        }
        
    }
    
    //测试ExecutorService
    public void testFun()
    {
        threadPool.execute(new FileProcessTask("log.txt"));
    }
}

class FileProcessTask implements Runnable
{
    private String fileName;
    
    public FileProcessTask(String fileName)
    {
        this.fileName = fileName;
    }

    @Override
    public void run()
    {
        System.out.println("process the file:" + fileName);
    }
    
}

3、测试代码

public class Test
{
    
    public static void main(String[] args)
    {
        FileProcess fileProcess = FileProcess.getInstance();
        fileProcess.start();
        fileProcess.testFun();
        fileProcess.stop();
    }
    
}


版权声明:本文为博主原创文章,未经博主允许不得转载。

ExecutorService 线程池使用和分析

android线程池的理解,晚上在家无事 预习了一下android异步加载的例子,也学习到了一个很重要的东东 那就是线程池+缓存  下面看他们的理解。 [size=1.8em]Handler+R...

java的ExecutorService线程池的使用

fixedThreadPool线程池的特点 在FixedThreadPool中,有一个固定大小的池。 如果当前需要执行的任务超过池大小,那么多出的任务处于等待状态,直到有空闲下来的线程执行任务,...

Java线程池(ExecutorService)使用

一、前提/** * 线程运行demo,运行时打出线程id以及传入线程中参数 */ public class ThreadRunner implements Runnable { privat...

ExecutorService线程池的使用

ExecutorService线程池 的使用 ExecutorService 建立多线程的步骤: 1。定义线程类 class Handler...

使用线程池ExecutorService实现并行查询

基于spring-boot框架,设计一个实现并行查询,汇总的业务。 使用ExecutorService的FixedThreadPool实现并行,通过future的get()方法收集结果。1、在spr...
  • foye12
  • foye12
  • 2017年08月02日 20:12
  • 49

Java使用ExecutorService线程池通过Socket传输AES加密,并在客户端用ServerSocket解密

查看的相关博文:关于socket传输的http://www.blogjava.net/sterning/archive/2007/10/13/152508.html关于AES加密的http://www...
  • del1214
  • del1214
  • 2011年07月28日 17:23
  • 1328

线程池的使用 ExecutorService newFixedThreadPool(int nThreads)

public static ExecutorService newFixedThreadPool(int nThreads) 创建一个可重用固定线程数的线程池,以共享的无界队列方式来运行这些线程。...

关于java线程池ExecutorService的使用既要

ExecutorService接口继承了Executor接口,定义了一些生命周期的方法 public interface ExecutorService extends Executor { v...

ExecutorService常用方法和newFixedThreadPool创建固定大小的线程池

ExecutorService常用方法和newFixedThreadPool创建固定大小的线程池本文由 arthinking 发表于443 天前 ⁄ Java基础 ⁄ 评论数 1 ⁄ 被围观 ...

Java ExecutorService四种线程池的例子与说明

1、new Thread的弊端 执行一个异步任务你还只是如下new Thread吗? new Thread(new Runnable() { @Override public void run(...
  • NK_TF
  • NK_TF
  • 2016年07月19日 20:40
  • 24337
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:线程池使用之ExecutorService
举报原因:
原因补充:

(最多只允许输入30个字)