我正在開發一個簡單的Java測試框架,它需要通過響應JMS調用來模擬weblogic部署。其中一個測試配置選項是模擬延遲的延遲。我想知道如果有人有什麼好的想法如何做到這一點。我只是想創建一個TimerTask來處理它,有沒有更好的方法?謝謝。模擬Java中的延遲
4
A
回答
3
您可以創建一個ScheduledExecutorService來執行延遲後的操作。
private final ScheduleExecutorService executor =
Executors.newSingleThreadScheduledExecutor();
// is main loop, waits between 10 - 30 ms.
executor.schedule(new Runnable() { public void run() {
// my delayed task
}}, 10 + new Random().nextInt(20), TimeUnit.MILLI_SECOND);
編輯:您可以使用Concurrency Backport爲JDK 1.4。它適用於JDK 1.2到JDK 6
2
如何只
Thread.sleep(10 + new Random().nextInt(20)); // waits between 10 - 30 ms.
即在響應JMS叫你只是用它來模擬一個隨機的等待時間延遲的代碼。
0
3
創建一個嘲笑服務器的對象。當它「接收」你的輸入時,讓它產生一個新線程來「處理連接」,就像真正的服務器一樣。該產生的線程可以將Thread.sleep()放入其心臟的內容中,以模擬發送和接收延遲,並允許您模擬一些在測試期間可能有用的服務器狀態屬性。
相關問題
- 1. Ajax延遲模擬
- 2. 用ASP.NET模擬延遲
- 3. 如何模擬Socket.io中的延遲?
- 4. 模擬一個延遲的虛方法
- 5. 模擬延遲的可能性?
- 6. 在java中延遲
- 7. 網絡丟包延遲帶寬模擬
- 8. 使用.NET Framework模擬網絡延遲
- 9. 模擬AJAX延遲與包裝封閉
- 10. 模擬按鈕點擊延遲
- 11. Android Studio模擬器是否延遲?
- 12. 異步模擬網絡延遲
- 13. 使用Apache Tomcat模擬網絡延遲?
- 14. q模塊中的延遲()
- 15. 模擬Linux上的HTTP POST調用中的延遲
- 16. 在Java中使用延遲
- 17. 如何在Java中延遲?
- 18. 如何模擬網絡延遲/人爲地增加網絡延遲?
- 19. Java時間延遲
- 20. Java延遲2秒
- 21. Java延遲/等待
- 22. 如何模擬網絡中的時間延遲
- 23. Android中的延遲加載只能在模擬器上工作?
- 24. 如何在NS2模擬中更改鏈接的延遲?
- 25. 如何模擬NS-3/ndnSIM中的過程延遲?
- 26. Java的短暫延遲
- 27. 在java中的延遲/計時器
- 28. Java程序中的事件延遲
- 29. Java中的延遲參考設置
- 30. 模擬觸摸事件之間的延遲
這可能是我的首選,但不幸的是我使用的是Java 1.4。 – Igman 2010-07-01 00:34:30
@Igman,見我的編輯 – 2010-07-02 07:13:49