命题
最近有一个需求是: 实现一个java
standalone应用,开辟静态HashMap(1500),创建500个线程,序号从1到500,每个线程都会建立3次连接访问数据库test,
调用数据库函数cms.sp_get_fundasset,传入线程序号作为参数。数据库函数返回的账户净值按序号写入对应的静态HashMap。统计500个线程全部结束后消耗的时间总长;
实现 思路
- 创建调用传统创建线程的类
- 创建db用于jdbc连接
- 创建test用于写测试代码
具体实现
线程类:
1 | package cn.northpark.test.multhread; |
数据连接类:
1 | package cn.northpark.test.multhread; |
测试执行类:
1 | package cn.northpark.test.multhread; |
说明:
2017年11月8日
- 运行test.java ,即可执行500个线程,分别调用函数返回结果,并且存放到map集合里.并且打印执行时间.
- db.java里面是连接数据库的方法和信息
- ConnThread.java是线程类
- TimeUtils.java是时间工具类