Java 執行緒內 遞迴 Bug 一例

2021-09-08 03:55:14 字數 777 閱讀 5498

乙個執行緒的run方法裡使用遞迴方法,出了bug。

private boolean ispass(string creationid)else

thread.sleep(1000 * 60);

falg++;

} catch (interruptedexception e)

ispass(creationid);

}}else

return false;

}同事的解決辦法,修改**通過丟擲異常的方式,也算解決了。當然了我不認可 。:)

private boolean ispass(string creationid) throws secus***ceptionelse

thread.sleep(1000 * 60);

falg++;

} catch (interruptedexception e)

ispass(creationid);

}}else

return false;

}我的解決辦法:除錯**,發現問題根源,該返回的地方,沒返回;不該返回的地方,返回了錯誤的值。

private boolean ispass(string creationid)else

thread.sleep(1000 * 60);

falg++;

} catch (interruptedexception e)

return ispass(creationid);

}}else

}

執行緒同步一例

功能 主線程建立乙個副執行緒,然後主線程負責將鍵盤輸入的內容寫到buffer,然後通知副執行緒將資料列印,列印完後,副執行緒通知主線程繼續從輸入緩衝區中將讀到的字元寫到buffer陣列。當輸入quit命令時,主線程退出,副執行緒也會隨著主線程的結束而自動結束。include include incl...

Java記憶體洩露一例

這段時間重構專案,把以前的 一點點拿出來看,還是很發現了幾個問題.其中記憶體洩露尤其隱蔽.這裡給出乙個例子 定義類 package com.hintsoft.test public class systemobj public void test package com.hintsoft.test ...

微軟trackbar控制項的bug一例

微軟trackbar控制項的bug一例 設定trackbar的最大值最小值時,只能使用這種形式 trackbar1.minimum 50 trackbar1.maximum 50 或int minimum 50 int maximum 50 trackbar1.minimum minimum tra...