2012-08-13 98 views
0

使用5個線程處理將1000個JMS消息發佈到EMS服務器的Java應用程序。我有一個迭代5次的循環,並且在每個循環中,我啓動一個可發佈200條消息的Runnable線程。計算JMS消息的響應時間

如何計算每條消息的響應時間?和每個線程的響應時間(200條消息)?

回答

0

可以使用的currentTimeMillis方法和計數的時間是這樣的:

long time1=System.currentTimeMillis(); 

    //Send 200 JMS Msg loop   
     long timeIntern1=System.currentTimeMillis(); 
     //Send a JMS Msg  
     long timeIntern2=System.currentTimeMillis(); 
     System.out.println("Time in millis last JMS Msg: "+(timeIntern2-timeIntern1)); 

    long time2=System.currentTimeMillis(); 

    System.out.println("Total time in millis: "+(time2-time1)); 
0

您可以使用Date.getTime()方法:

import java.util.Date; 

static long stamp() 
{ 
    return new Date().getTime(); 
} 

public static void main(String[] args) throws InterruptedException 
{ 
    long start = stamp(); 
    //Do whatever 
    Thread.sleep(5_124); 
    long end = stamp(); 
    System.out.println("Took " + (end - start) + " milliseconds."); 
} 

輸出:

Took 5124 milliseconds.