亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

java中wait調用中斷的解決方法

發布時間:2021-04-27 14:23:55 來源:億速云 閱讀:365 作者:小新 欄目:編程語言

這篇文章主要介紹java中wait調用中斷的解決方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!

Java的優點是什么

1. 簡單,只需理解基本的概念,就可以編寫適合于各種情況的應用程序;2. 面向對象;3. 分布性,Java是面向網絡的語言;4. 魯棒性,java提供自動垃圾收集來進行內存管理,防止程序員在管理內存時容易產生的錯誤。;5. 安全性,用于網絡、分布環境下的Java必須防止病毒的入侵。6. 體系結構中立,只要安裝了Java運行時系統,就可在任意處理器上運行。7. 可移植性,Java可以方便地移植到網絡上的不同機器。8.解釋執行,Java解釋器直接對Java字節碼進行解釋執行。

java中的線程在數量上,可以說是比較多的。所以為了能夠使線程有序的進行,我們通常會用到wait方法,來讓部分線程變為等待的狀態。不過wait方法一旦被中斷也是非常麻煩的,將會出現不斷調用的情況。下面我們就這種問題進行分析,然后帶來具體的實例解決辦法。

1、解決辦法

(1)使用java線程時,將經常使用wait方法,并且如果在調用wait方法時中斷了,jvm將捕獲該中斷,并持續調用wait指令。

(2)此時即使使用interrupt發送法中斷,也不會發生任何效果。

(3)wait方法需要進行一些封裝,捕獲異常,然后停止執行該異常。

2、實例

public static void wait(Object obj) {
        boolean interrupted = true;
        while (interrupted) {
            interrupted = false;
            try {
                obj.wait();
            }
            catch (InterruptedException e) {
                interrupted = true;
            }
        }
    }
 
    public static void wait(Object obj, int timeout) {
        boolean interrupted = true;
        long startTime = System.currentTimeMillis();
        int sleepTimeout = timeout;
 
        while (interrupted) {
            interrupted = false;
            try {
                obj.wait(sleepTimeout);
            }
            catch (InterruptedException e) {
                interrupted = true;
                long now = System.currentTimeMillis();
                sleepTimeout -= now - startTime;
                startTime = now;
                if (sleepTimeout < 0) {
                    interrupted = false;
                }
            }
        }
}

以上是“java中wait調用中斷的解決方法”這篇文章的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西林县| 西乡县| 霍林郭勒市| 大同县| 淅川县| 偏关县| 涪陵区| 松溪县| 盐城市| 中阳县| 吕梁市| 游戏| 万荣县| 铜鼓县| 班戈县| 家居| 宝坻区| 沽源县| 临夏县| 手机| 阿城市| 南靖县| 安乡县| 上蔡县| 高州市| 万安县| 宿州市| 彩票| 棋牌| 双桥区| 满洲里市| 集贤县| 积石山| 游戏| 桃园县| 镇坪县| 双流县| 凭祥市| 陈巴尔虎旗| 五家渠市| 永嘉县|