我做的是一个多线程的环境,极其多的线程,比如几百个。但其中有2个主要的线程是需要定时作的。但所有这些线程都是同一级生成的,所以运行优先级别也是一样的。我现在定时用的是循环中,每次在执行任务后,SLEEP(1000)来达到每秒执行一次任务的效果。可是实际上应该只是接近,因为执行任务也会需要时间,虽然很短,但一个循环下来的时间肯定是大于1秒的。我知道还有java.util.Timer和java.util.TimerTask可以用来定时。可是
1,他们在几百个线程的环境下,效果好么?是不是一样很不准确?
2,不大确定它们的运行级别。他们如果是在主程序中生成的,我其他几百个线程也是,那TIMER的级别和其他线程的级别也是一样的么?谢谢。
1,他们在几百个线程的环境下,效果好么?是不是一样很不准确?
2,不大确定它们的运行级别。他们如果是在主程序中生成的,我其他几百个线程也是,那TIMER的级别和其他线程的级别也是一样的么?谢谢。
设计应该有问题,为什么要那么多线程,你怎么保证这些线程是正确工作的?
如果保证不了就应该不用多线程,或少用,把想成要做的工作分类,让后将
一类工作排队后交给线程处理,就像J2EE服务器那样