<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 閱讀(129) 評論(0)  編輯  收藏


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


    網站導航:
     
    主站蜘蛛池模板: 国产成人精品亚洲精品| 成年女人18级毛片毛片免费观看| 亚洲人成人无码网www国产| 亚洲国产视频久久| 成人毛片免费观看视频在线| 亚洲国产精品成人久久| 中文字幕免费视频精品一| 亚洲男人的天堂www| 国产午夜无码精品免费看| 亚洲av无码专区国产不乱码| 免费a级毛片高清视频不卡| 亚洲成人激情小说| 精品久久久久久久免费人妻| 精品国产亚洲AV麻豆 | 人成午夜免费视频在线观看| 亚洲黄网站wwwwww| 无码专区永久免费AV网站| 亚洲一区二区无码偷拍| 国产国产人免费人成免费视频| 亚洲成av人片不卡无码久久 | 四虎永久免费观看| 亚洲国产成人AV网站| 男人的天堂亚洲一区二区三区 | 亚洲AV永久精品爱情岛论坛| 免费在线看黄的网站| 亚洲精品成人久久| 国产精品无码一区二区三区免费| 久久青青成人亚洲精品| 成年人网站免费视频| 中国亚洲呦女专区| 久久久久亚洲AV成人网人人网站| 99热亚洲色精品国产88| mm1313亚洲精品国产| 一级毛片免费观看不卡视频| 亚洲人成网站看在线播放| 亚洲精品视频在线观看你懂的| 亚洲一区在线视频观看| 日产国产精品亚洲系列| 国产午夜无码精品免费看| 亚洲成a人无码亚洲成www牛牛| 99国产精品永久免费视频|