❶ java中有幾種方法可以實現一個線程用什麼關鍵字修飾同步方法 stop()和suspend()方法為何不推薦使用
有兩種實現方法,分別是繼承Thread類與實現Runnable介面
用synchronized關鍵字修飾同步方法
反對使用stop(),是因為它不安全。它會解除由線程獲取的所有鎖定,而且如果對象處於一種不連貫狀態,那麼其他線程能在那種狀態下檢查和修改它們。結果很難檢查出真正的問題所在。suspend()方法容易發生死鎖。調用suspend()的時候,目標線程會停下來,但卻仍然持有在這之前獲得的鎖定。此時,其他任何線程都不能訪問鎖定的資源,除非被"掛起"的線程恢復運行。對任何線程來說,如果它們想恢復目標線程,同時又試圖使用任何一個鎖定的資源,就會造成死鎖。所以不應該使用suspend(),而應在自己的Thread類中置入一個標志,指出線程應該活動還是掛起。若標志指出線程應該掛起,便用wait()命其進入等待狀態。若標志指出線程應當恢復,則用一個notify()重新啟動線程。
❷ Java編程中 不建議使用類型window的方法show() 是什麼意思
過時的方法;一般都會在show();方法上發個斜線;表示過時的
現在用setVisible(true);來表示
❸ JAVA方法上加了刪除線
java某些對象的方法點後面有刪除線,表明這個方法隨著JDK的升級不推薦使用了,對象肯定有其他方法可以替代帶刪除線方法,效率、邏輯性更高。
❹ 為啥Java里的Thread類suspend和resume方法會被不贊成使用
suspend()方法已經是過期作廢的方法,之所以不推薦使用,是因為不好控制,比如:當一個同步線程調用
suspend()方法時,cpu資源被釋放,但是當前線程持有的鎖不會釋放,這就很容易導致程序卡死,無法執行。