我正在尝试测量“进程”的响应时间(我从服务器请求数据然后显示数据)。我想测量从我要求数据(当我按下“发送”按钮时)到数据显示在我的txtbox中所花费的时间。
看起来像这样:
(these two are at the very top:)
private long a
private long b
...other code...
a = System.currentTimeMillis();
btnSend.addActionListener(new ActionListener(){
@Override
public void actionPerformed(ActionEvent arg0) {
String fileContents;
b = System.currentTimeMillis();
try {
fileContents = control.getFileContents(txtSearch.getText());
txtView.setText(fileContents + "\n" + "\n" + "The process took "+(b-a)+"milliseconds to execute." + "\n" + "("+((b-a)/1000)+" seconds)");
} catch (RemoteException e) {
txtView.setText("File not found");
}
}
Ant可行,但这是第一次。如果我发送另一个请求,那么时间只会添加到旧时间。第一个请求需要2秒,第二个请求需要7秒(实际上需要花费2秒)。
我尝试通过以下方式重置a和b来避免问题:
a = 0;
b = 0;
在重置按钮中,但似乎只是让事情变得有点疯狂。
有关如何解决问题的任何想法?
由于
答案 0 :(得分:0)
看起来非常像你在创建按钮时设置a的值,而在你点击它时设置b。如果你这样做,那么你会看到你看到的结果。 A将保持不变,B将越来越远离它。然后当你重置时,事情会变得有点疯狂"因为现在A等于零。所以它会说你的往返大约需要45年(自1970年以来的时间,这是currentTimeMillis()的0值。)
相反,您希望在单击按钮时设置A的值,在获得结果后设置B.
像这样:
$current_time = time();
if ($current_time < mktime(0, 0, 0, 6, 1, 2015)) {
if ($_POST['fee'] !== '15' && $_POST['fee'] !== '30') {
// return error
}
} else if ($current_time < mktime(0, 0, 0, 7, 1, 2015)) {
if ($_POST['fee'] !== '25' && $_POST['fee'] !== '50') {
// return error
}
} else if ($current_time < mktime(0, 0, 0, 7, 11, 2015)) {
if ($_POST['fee'] !== '40' && $_POST['fee'] !== '80') {
// return error
}
}