一直是强势围观,从未发过贴。现在遇到一问题:同时用多个线程到处多个表的数据,各个表之间数据量未知,为了节省时间,使用多线程,由于本人属菜鸟级,所以对线程不是太了解,现用线程池解决这问题,不知这是否正确,或者是否有更优方法,或者此方法有哪些需要改进,忘各位大大不吝赐教,再此谢过。
代码如下
ThreadPoolExecutor poolExecutor = new ThreadPoolExecutor(1, 3, 60, TimeUnit.SECONDS, new ArrayBlockingQueue<Runnable>(3),new ThreadPoolExecutor.CallerRunsPolicy());
for (String table : tables)
{
poolExecutor.execute(new ExportTask(entityName));
}
class ExportTask implements Runnable
{
ZipOutputStream zos;
String table;
public ExportTask(String table) throws FileNotFoundException
{
this.table =table;
zos = new ZipOutputStream(new BufferedOutputStream(new FileOutputStream(new File("packageDir", "abc.zip"))));
}
public void run()
{
// export the table data into file
export(table);
}
}
分享到:
相关推荐
java多线程,对多线程,线程池进行封装,方便使用
JAVA多线程 线程的动态执行图解
java线程、线程池、xml解析 适合入门的例子或文档 上手使用
Java多线程和线程池是Java语言中非常重要的知识点,它们可以帮助我们更好地管理和控制程序的并发执行。本资源主要是对Java多线程和线程池进行详细的讲解和练习。
在多线程大师Doug Lea的贡献下,在JDK1.5中加入了许多对并发特性的支持,例如:线程池。.......................................JAVA线程、线程池资料----下载不扣分,回帖加1分,欢迎下载,童叟无欺JAVA线程、...
Java、Android多线程、线程池Demo
Java多线程实现数据切割批量执行,实现限流操作。 java线程池Executors实现数据批量操作。 批量异步Executors处理数据,实现限流操作,QPS限流。 线程池调用第三方接口限流实现逻辑。 案例适合: 1.批量处理大数据。...
java多线程并发查询数据库,使用线程池控制分页,并发查询。
java多线程,线程池,lambda表达式
Java多线程编程,生命游戏,用线程池.zipJava多线程编程,生命游戏,用线程池.zip Java多线程编程,生命游戏,用线程池.zipJava多线程编程,生命游戏,用线程池.zip Java多线程编程,生命游戏,用线程池.zipJava多...
JAVA使用线程池查询大批量数据
本套视频为同名图书的配套视频,图书预计在2021.4上市
在当前的Java面试和后台开发中,多线程与线程池技术越来越重要。毫不夸张的说,如何你想进入任何一家好的网络公司并能够长足发展,多线程与线程池技术是必须要掌握的技能!
java多线程加队列上传文件_后台处理
java多线程实现大批量数据切分成指定份数的数据,然后多线程处理入库或者导出,线程的个数和每份数据的数量都可以控制
首先希望大家喜欢我制作的文档,如果文档中有什么误解的地方,望告诉一下,5分是也不多,是系统默认的,那么就5分咯,java多线程详解,线程池原理,8种锁,java内存模型......
本文档对Java中的线程和线程池进行了简单介绍。首先,阐述了为什么需要线程、Java中实现线程的几种方式,线程的多种状态切换;然后,介绍了为什么需要线程池,JDK自带的线程池实现方式ThreadPoolExecutor的使用及其...
用于数据量大的情况下预先查询出数据,加快对后面页面数据的查询速度
volatile关键字的非原子性、volatile关键字的使用、AtomicInteger原子性操作、线程安全小例子:多个线程竞争问题、多个线程多个锁问题、创建一个缓存的线程池、多线程使用Vector或者HashTable的示例(简单线程同步...