当前位置: 技术问答>java相关
怎么样控制处在Runnable状态的线程的数量???
来源: 互联网 发布时间:2015-02-06
本文导语: 比如起了一个ServerSocket,只要有客户端连接上就起一个线程处理客户请求, 但考虑到server能承受的压力,可能希望只有一部分线程处在runnable状态, 应该怎么做? | 在实现runnable的类runthread中...
比如起了一个ServerSocket,只要有客户端连接上就起一个线程处理客户请求,
但考虑到server能承受的压力,可能希望只有一部分线程处在runnable状态,
应该怎么做?
但考虑到server能承受的压力,可能希望只有一部分线程处在runnable状态,
应该怎么做?
|
在实现runnable的类runthread中设置一个static型的计数器,
开始运行时计数器加1,停止时减1
继承ServerSocket类,重写accept方法,在方法中先循环检查runthread的计数器记录的线程数目是否过大,如果过大,当前线程睡眠一小段时间。直到小于跳出循环,再调用父类的accept,这样就可以。
开始运行时计数器加1,停止时减1
继承ServerSocket类,重写accept方法,在方法中先循环检查runthread的计数器记录的线程数目是否过大,如果过大,当前线程睡眠一小段时间。直到小于跳出循环,再调用父类的accept,这样就可以。