Thread-1.5

Lock

Java1.5以后添加了Lock類,可以鎖定代碼,相當(dāng)于synchronized .

 /** {@code Lock} implementations provide more extensive locking
 * operations than can be obtained using {@code synchronized} methods
 * and statements.  They allow more flexible structuring, may have
 * quite different properties, and may support multiple associated
 * {@link Condition} objects.
 **/
public static void out(String str) {
     int len = str.length();
//    lock.lock();
     for (int i = 0; i < len; i++) {
           System.out.print(str.charAt(i));
     }
    System.out.println();
}
運(yùn)行結(jié)果.png

當(dāng)我們鎖上之后

    static class Output {
        static Lock lock = new ReentrantLock();
        public static void out(String str) {
            int len = str.length();
            lock.lock();
            try {
                for (int i = 0; i < len; i++) {
                    System.out.print(str.charAt(i));
                }
            } catch (Exception e) {
            }finally {
                lock.unlock();
            }
            System.out.println();
        }
    }
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Java8張圖 11、字符串不變性 12、equals()方法、hashCode()方法的區(qū)別 13、...
    Miley_MOJIE閱讀 3,917評(píng)論 0 11
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法,類相關(guān)的語法,內(nèi)部類的語法,繼承相關(guān)的語法,異常的語法,線程的語...
    子非魚_t_閱讀 34,853評(píng)論 18 399
  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,279評(píng)論 0 62
  • 一:java概述:1,JDK:Java Development Kit,java的開發(fā)和運(yùn)行環(huán)境,java的開發(fā)工...
    ZaneInTheSun閱讀 2,823評(píng)論 0 11
  • 從前,東方有個(gè)國王,他有三個(gè)問題深深困擾著他:一、做每件事情的最重要的時(shí)間是何時(shí)?二、與我共事的最重要的人是誰?三...
    Ai慢慢講故事閱讀 1,246評(píng)論 0 1

友情鏈接更多精彩內(nèi)容