2011-11-28 73 views
2

在Eclipse中調試時有沒有辦法「加快時間」?在Eclipse中調試時加快速度

例如,假設您正在調試下面的一段代碼:

someFun(); 
Thread.sleep(ONE_MINUTE); 
someOtherFun(); 

...達到了Thread.sleep()方法時,你必須能夠繼續之前等待一分鐘調試。有沒有辦法「加快時間」,並立即返回sleep()方法? (據我所知,這種加速實際上可能是危險的,但我們假設它不會干擾程序的正確性。)

下一個替代方法是將Thread.sleep()放到調試下標誌,但我想避免對代碼進行這樣的更改。

+0

我假設你使用的是Java? – Gabe

+0

是的,我正在使用Java。 – Aaron

回答

1

就在執行Thread.sleep之前,您可以使用change value選項將變量視圖中的ONE_MINUTE值更改。這似乎不適用於最終領域。

另一種選擇是將呼叫包裝到另一種方法中,然後您可以從方法中「強制返回」。

2

你可以嘗試找出應用程序是否以調試模式啓動。取決於你可以設置改變睡眠時間。但保重。特別是如果你使用thread.sleep()。應用程序可能會根據您的使用情況而有所不同。

public static final int ONE_SECOND = 1000; 
public static final int ONE_MINUTE = 60 * ONE_SECOND; 
public static final int SLEEP_TIME = (java.lang.management.ManagementFactory.getRuntimeMXBean(). 
    getInputArguments().toString().indexOf("-agentlib:jdwp") > 0)?ONE_SECOND:ONE_MINUTE;