java中如何获得每个线程单独运行的时间呢? 10C

如何统计每个线程单独运行的时间呢?
比如同时起10个线程,有办法得到每个线程从开始到结束的耗时吗?

4个回答

 public class TestThread {
   public static void startThread() {
       new Thread() {
           public void run() {
               System.out.println(this.currentThread().getName()+"开始时间[" + new java.util.Date().getTime());
               try {
                   Thread.sleep(2000);
               }catch(Exception ex) {
                   ex.printStackTrace();
               }
               System.out.println(this.currentThread().getName()+"结束时间[" + new java.util.Date().getTime());
           }
       }.start();
   }
   public static void main(String[] args) {
       TestThread.startThread();
       TestThread.startThread();
       TestThread.startThread();
       TestThread.startThread();
   }
}

在线程的开始和结束前面加上时间统计

楼主可以试试:

 public void run(){

    Thread.currentThead().getName() + “  start time-->”+System.currentTimemillis();
    //业务逻辑
    Thread.currentThead().getName() + “  end time-->”+System.currentTimemillis();
}

CountDownLatch 可以实现 具体怎么做 我忘了 楼主可以研究下

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问