2012-08-13 100 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.