0
我有一個程序,用於測量學生執行任務所需的時間。 該程序連接到互聯網,最低時間的學生在網站上獲獎。遠程測量已用時間
鑑於PC可以不正確地測量時間(我見過它發生),或者學生可以預先加載共享庫來攔截OS調用並給出假時間,所以需要在服務器端執行時間。
目前我的邏輯是這樣的:
- 客戶端信號服務器開始。
- 服務器記錄時間並將ACK發送回客戶端。
- 客戶端收到ACK後啓動任務。
- 客戶端完成任務並向服務器發送通知。
- 服務器記錄時間並計算已用時間。
的問題是,這包括從時間服務器發送ACK到客戶端接收它+客戶端完成到服務器接收到該消息時的時間的時間的等待時間。如果等待時間爲400毫秒,任務時間爲6秒,則它佔總時間的相當大的百分比。
當學生或PC可能不值得信任時,有沒有更好的方法來衡量任務的時間?
學生應該儘可能在最短的時間內回答10個quickfire數學問題 - 他們不會產生結果二進制或代碼,所以不幸的是,這是行不通的。 – 2011-12-22 16:50:31
也許你可以在學生的瀏覽器中使用Javascript做事情? – 2011-12-22 17:27:26
不幸的是,使用Javascript,用戶可以很容易地改變發生的事情,例如調用他們自己的方法,停止被調用的方法等。這不會使時序非常可靠。 – 2012-08-05 05:35:45