<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    敬的世界

    常用鏈接

    統計

    最新評論

    關于 Thread

    We began this section by wondering whether it was preferable to program a task using the Runnable interface or the Thread class. We've seen examples of why you would need each. There's an additional advantage to the Runnable interface, however. With Runnable, Java provides a number of classes that handle threading issues for you. These classes handle thread pooling, task scheduling, or timing issues. If you're going to use such a class, your task must be a Runnable object (or, in some cases, an object that has an embedded Runnable object).

    If you do a thorough program design and Unified Modeling Language (UML) model of your application, the resulting object hierarchy tells you pretty clearly whether your task needs to subclass another class (in which case you must use the Runnable interface) or whether you need to use the methods of the Thread class within your task. But if your object hierarchy is silent on the parent class for your task, or if you do a lot of prototyping or extreme programming, then what? Then the choice is yours: you can use the Runnable interface, which gives you a little more flexibility at the cost of the overhead of keeping track of the thread objects separately, or you can trade that flexibility for simplicity and subclass the Thread class.

    Definition: Mutex Lock

    A mutex lock is also known as a mutually exclusive lock. This type of lock is provided by many threading systems as a means of synchronization. Only one thread can grab a mutex at a time: if two threads try to grab a mutex, only one succeeds. The other thread has to wait until the first thread releases the lock before it can grab the lock and continue operation.

    In Java, every object has an associated lock. When a method is declared synchronized, the executing thread must grab the lock associated with the object before it can continue. Upon completion of the method, the lock is automatically released.


    Under the covers, the concept of synchronization is simple: when a method is declared synchronized, the thread that wants to execute the method must acquire a token, which we call a lock. Once the method has acquired (or checked out or grabbed) this lock, it executes the method and releases (or returns) the lock. No matter how the method returns梚ncluding via an exception梩he lock is released. There is only one lock per object, so if two separate threads try to call synchronized methods of the same object, only one can execute the method immediately; the other has to wait until the first thread releases the lock before it can executethe method.

    posted on 2008-10-15 18:34 picture talk 閱讀(126) 評論(0)  編輯  收藏


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 亚洲AV性色在线观看| 亚洲丰满熟女一区二区v| 色网站在线免费观看| 国产成人高清精品免费软件| MM1313亚洲国产精品| 全部免费a级毛片| 无人视频在线观看免费播放影院| 国产免费久久精品久久久| 国产精品亚洲一区二区三区| 国产成人免费A在线视频| 粉色视频在线观看www免费| 免费大黄网站在线观| 三级片免费观看久久| 国产亚洲成人在线播放va| 成人A毛片免费观看网站| 亚洲成色www久久网站夜月| 免费无码一区二区三区| 亚洲三级在线视频| 青青草免费在线视频| 鲁死你资源站亚洲av| 国产91精品一区二区麻豆亚洲 | 又大又硬又爽又粗又快的视频免费| 久久综合九九亚洲一区| 黄色永久免费网站| 亚洲色偷偷色噜噜狠狠99| 又黄又爽的视频免费看| 日韩免费无码一区二区三区 | 永久免费毛片在线播放| 亚洲精品无码少妇30P| 久久精品国产精品亚洲下载| 亚欧日韩毛片在线看免费网站| 亚洲精品123区在线观看| 亚洲成?v人片天堂网无码| 国产成人精品一区二区三区免费| 亚洲精品不卡视频| 免费日韩在线视频| 59pao成国产成视频永久免费| 亚洲国产AV无码一区二区三区 | 女人张开腿等男人桶免费视频 | 麻豆成人精品国产免费| 中文字字幕在线高清免费电影|