1. 对于java应用服务器,每次正常的关闭或者重启,是否需要等所有线程(除了主线程)执行完
朋友让我帮忙写个程序从文本文档中导入数据到oracle数据库中,技术上没有什么难度,文档的格式都是固定的只要对应数据库中的字段解析就行了,关键在于性能。
数据量很大百万条记录,因此考虑到要用多线程并发执行,在写的过程中又遇到问题,我想统计所有子进程执行完毕总共的耗时,在第一个子进程创建前记录当前时间用System.currentTimeMillis()在最后一个子进程结束后记录当前时间,两次一减得到的时间差即为总共的用时,代码如下
Java代码
{
;
publicImportThread(CountDownLatchthreadsSignal){
this.threadsSignal=threadsSignal;
}
@Override
publicvoidrun(){
System.out.println(Thread.currentThread().getName()+"开始...");
//Dosomethings
threadsSignal.countDown();//线程结束时计数器减1
System.out.println(Thread.currentThread().getName()+"结束.还有"+threadsSignal.getCount()+"个线程");
}
}
主线程中
Java代码
CountDownLatchthreadSignal=newCountDownLatch(threadNum);//初始化countDown
for(intii=0;ii<threadNum;ii++){//开threadNum个线程
finalIterator<String>itt=it.get(ii);
Threadt=newImportThread(itt,sql,threadSignal);
t.start();
}
threadSignal.await();//等待所有子线程执行完
System.out.println(Thread.currentThread().getName()+"结束.");//打印结束标记
打印结果:
main开始
Thread-1开始...
Thread-0开始...
Thread-2开始...
Thread-3开始...
Thread-4开始...
Thread-5开始...
Thread-0结束. 还有5 个线程
Thread-1结束. 还有4 个线程
Thread-4结束. 还有3 个线程
Thread-2结束. 还有2 个线程
Thread-5结束. 还有1 个线程
Thread-3结束. 还有0 个线程
main结束.
2. java 怎么实现关机或重启
java不能直接实现关机或者重启,但是可以通过调用windows的关机命令实现关机
BAIDU搜索”java调用exe”有详细的解答
3. #java:如果服务器重启了,之前正在执行的timer定时任务还在吗
服务器重启了,那内存中的数据全部丢失了,之前执行的 timer 肯定不在了啊。
下单这种操作,肯定是要将详细数据记录到数据库,这样即使服务器重启了,也能将场景还原。
4. 求java重启服务器的代码
Process procStop = Runtime.getRuntime().exec("shutdown -r -t 0");
5. java开发,验证码发送的时候服务器重启怎么解决方法
1.用两个服务器不就行了,业务处理服务器+缓存服务器,验证码生成后在缓存服务器存放,重启业务处理服务器不会导致缓存服务器验证码丢失!
2.或者也可以使用数据库保存验证码,不推荐这种方式,因为数据库不会自动刷新数据(验证码失效),数据交互也比较频繁,耗资源!
6. java web怎么重启tomcat服务器
可以进入tomcat的bin目录执行shutdown停止服务,然后在执行startup启动服务
7. java synchronousqueue 服务器重启怎么办
java synchronousqueue 服务器重启解决办法:
直接分配接收者线程,此时可采用SynchronousQueue,只要当前池的大小还小于最大值,ThreadPoolExecutor就会创建新线程。
SynchronousQueue并不是真正的队列,而是一种管理直接在线程之间移交信息的机制,Executors.newCachedThreadPool()工厂就采用的这种机制。
8. 如何通过JAVA代码 重启tomcat
配置文件的作用就是方便修改吧。在单例的时候加个判断,如果用户点击了“重启加载配置文件”就让程序重新读取配置文件,否则不读取文件。这样就不用重启Tomcat了.
9. 有关Java和Weblogic服务每次重启的问题
你重新部署一下就行了,没有必要重启啊!
10. 如何让Java服务器定时清理内存怎样每周自动重启一次服务器
如果你的服务器在Linux 你写一个shell脚本 重启JAVA WEB服务器即可。
内存回收问题 你需要设置相关参数比如 heap size,perm size 等 这个比例要设置好,重启服务器就不用自己再去释放内存了,重启的话 进程就会重开一个新的。