-4
我遇到了一個奇怪的問題,我的run()方法運行一次函數兩次。可能的原因是什麼? run()是從另一個線程調用的。函數重複調用
run()
{
while(...)
{
...
}
function();
}
我遇到了一個奇怪的問題,我的run()方法運行一次函數兩次。可能的原因是什麼? run()是從另一個線程調用的。函數重複調用
run()
{
while(...)
{
...
}
function();
}
在這種情況下,如果你打印出堆棧跟蹤,找出誰是主叫方,或者你可以使用一個調試器只設置一個斷點,並檢查調用樹它幫助。
打印出堆棧跟蹤的最簡單方法是:
for (StackTraceElement ste : Thread.currentThread().getStackTrace()) {
System.out.println(ste);
}
的唯一原因是,它叫了兩聲...所以你應該張貼其他線程的代碼,而不是這一個 – 2013-03-14 15:19:47
安置自己的代碼.. – Pragnani 2013-03-14 15:20:00
請閱讀http://tinyurl.com/so-list – 2013-03-14 15:20:41