线程池的大小如何控制?

问题描述

privatefinalServerSocketserverSocket;privatefinalExecutorServicepool;publicNetworkService(intport,intpoolSize)throwsIOException{serverSocket=newServerSocket(port);pool=Executors.newFixedThreadPool(poolSize);}

如何才能有效的控制poolSize这个数量呢。

解决方案

解决方案二:
貌似TOMCAT中可以
解决方案三:
学习下
解决方案四:
好像线程池是可以设置大小的
解决方案五:
和链接池差不多吧
解决方案六:
我是说这个大小如何控制,根据实际的需求,多大为最好。
解决方案七:
研究下tomcat的xml好像有设置的
解决方案八:
这个只能试了,具体还要看你的并发量有多大,还要看你是长连接还是短连接,比较麻烦。
解决方案九:
该回复于2011-04-01 10:29:59被版主删除
解决方案十:
Executors.newFixedThreadPool它就可以呀

时间: 2024-09-29 19:05:25

线程池的大小如何控制?的相关文章

jvm启动参数 怎样设置线程池的大小

问题描述 jvm启动参数 怎样设置线程池的大小 被问过几次jvm怎样设置线程池大小,网上查询无果,请大师帮助解答,若问题本身就有问题,还请大神们指点 解决方案 -XX:ThreadStackSize=512

java concurrent包自带线程池和队列详细讲解

Java线程池使用说明一简介线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的.在jdk1.5之后这一情况有了很大的改观.Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用.为我们在开发中处理线程的问题提供了非常大的帮助.二:线程池线程池的作用:线程池作用就是限制系统中执行线程的数量.     根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果:少了浪费了系统资

java自带线程池和队列详细讲解(Java线程池使用说明)

一简介 线程的使用在java中占有极其重要的地位,在jdk1.4极其之前的jdk版本中,关于线程池的使用是极其简陋的.在jdk1.5之后这一情况有了很大的改观.Jdk1.5之后加入了java.util.concurrent包,这个包中主要介绍java中线程以及线程池的使用.为我们在开发中处理线程的问题提供了非常大的帮助. 二:线程池 线程池的作用: 线程池作用就是限制系统中执行线程的数量.     根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果:少了浪费了系统资源,多了造成系

new Thread的弊端及Java四种线程池的使用

介绍new Thread的弊端及Java四种线程池的使用,对Android同样适用.本文是基础篇,后面会分享下线程池一些高级功能. 1.new Thread的弊端 执行一个异步任务你还只是如下new Thread吗? new Thread(new Runnable() { @Override public void run() { // TODO Auto-generated method stub } }).start(); 那你就out太多了,new Thread的弊端如下: a. 每次ne

java 四种 线程池

java通过Executors提供四种线程池,分别为: newCachedThreadPool创建一个可缓存线程池,如果线程池长度超过处理需要,可灵活回收空闲线程,若无可回收,则新建线程. newFixedThreadPool 创建一个定长线程池,可控制线程最大并发数,超出的线程会在队列中等待. newScheduledThreadPool 创建一个定长线程池,支持定时及周期性任务执行. newSingleThreadExecutor 创建一个单线程化的线程池,它只会用唯一的工作线程来执行任务,

JAVA线程池代码浅析

1. ExecutorService Java从1.5开始正式提供了并发包,而这个并发包里面除了原子变量,synchronizer,并发容器,另外一个非常重要的特性就是线程池.对于线程池的意义,我们这边不再多说. 上图是线程池的主体类图,ThreadPoolExecutor是应用最为广泛的一个线程池实现(我也将在接下来的文字中详细描述我对这个类的理解和执行机制),ScheduledThreadPoolExecutor则在ThreadPoolExecutor上提供了定时执行的等附加功能,这个可以从

戏(细)说Executor框架线程池任务执行全过程(上)

原文链接   归档下发表于infoq.com 2015年6月的两篇文章. 内容综述 基于Executor接口中将任务提交和任务执行解耦的设计,ExecutorService和其各种功能强大的实现类提供了非常简便方式来提交任务并获取任务执行结果,封装了任务执行的全部过程.本文尝试通过对j.u.c.下该部分源码的解析以ThreadPoolExecutor为例来追踪任务提交.执行.获取执行结果的整个过程.为了避免陷入枯燥的源码解释,将该过程和过程中涉及的角色与我们工作中的场景和场景中涉及的角色进行映射

[MySQL5.6] Percona Server 5.6.14的线程池浅析

Percona的线程池 基本上是从Mariadb中引入,其实现思路也比较简单,就是在线程调度器那增加了一组新的回调函数.线程池可以有效改善在大并发下的性能: Thread pool的原理在Percona的这篇博客描述的很生动:其实就是限制同时运行的线程数,让大家不要一起挤进来,有序运行负载.线程池的目的不是为了提高性能,而是为了保持性能的稳定. 在使用线程池的场景下,就不是通常的一个连接一个线程(one-thread-per-connection),你可以创建几千甚至上万个Socket连接,My

java中线程池的使用(ThreadPoolExecutor)

一.为什么使用线程池: 1.降低资源消耗.主要指的是降低创建和销毁线程时产生的cpu资源消耗,线程池通过持续工作的线程执行不断分配的新任务,来减少频繁的线程创建与销毁. ##2.提高响应速度.同上 ##3.提高线程的可管理性.线程是稀缺资源,频繁的创建销毁,以及没有控制的大量创建,都会影响系统的稳定性.使用线程池可以统一分配,调优,监控资源. 二.如何创建线程池: new ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long