栏目导航
热点推荐
- 三十条有用的 Java 编程规则
- Java制作水印图片源码
- Java常见异常及可能的导致原因
- Java中的修饰词使用方法总结
- J2EE系统异常的处理准则
- Java中的异常、断言、日志解析(
- Java面试技巧:Java面试题集锦(
- 面向Java开发人员的Scala指南:
- Java程序员:一刻钟精通正则表达
- 网友经验分享:学好java开发的关
- 专家解答:创建表格与数据库进行
- Java远程访问Domino数据库
阅览排行
Java模拟并发操作进行压力测试代码
www.jz123.cn 2010-01-22 来源: 中国建站 责任编辑(袁袁) 我要投递新闻
import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.HttpURLConnection; import java.net.URL; import java.util.HashMap; import java.util.Map; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; import java.util.concurrent.Semaphore; public class ConcurrentTest { private static int thread_num = 200; private static int client_num = 460; private static Map keywordMap = new HashMap(); static { try { InputStreamReader isr = new InputStreamReader(new FileInputStream( new File("clicks.txt")), "GBK"); BufferedReader buffer = new BufferedReader(isr); String line = ""; while ((line = buffer.readLine()) != null) { keywordMap.put(line.substring(0, line.lastIndexOf(":")), ""); } } catch (Exception e) { e.printStackTrace(); } } public static void main(String[] args) { int size = keywordMap.size(); // TODO Auto-generated method stub ExecutorService exec = Executors.newCachedThreadPool(); // 50个线程可以同时访问 final Semaphore semp = new Semaphore(thread_num); // 模拟2000个客户端访问 for (int index = 0; index < client_num; index++) { final int NO = index; Runnable run = new Runnable() { public void run() { try { // 获取许可 |
0
上一篇:Java用XFire开发调用webService实例 下一篇:JAVA实现图片的任意方向反转的代码