国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

java并發(fā)之Thread和Runnable

darkbug / 1266人閱讀

摘要:開發(fā)中不可避免用到多線程情況,比如中常見的都是運用到多線程,多線程的根本目的是為了更快的執(zhí)行。其他常用到的多線程比如設(shè)計到大量操作用多線程可明顯提升效率。中最基礎(chǔ)的并發(fā)類就是是一個接口,只要實現(xiàn)實現(xiàn),重寫方法就可以實現(xiàn)多線程操作。

java開發(fā)中不可避免用到多線程情況,比如web中常見的Servlet、Struts2都是運用到多線程,多線程的根本目的是為了更快的執(zhí)行。其他常用到的多線程比如設(shè)計到大量I/O操作,用多線程可明顯提升效率。
java中最基礎(chǔ)的并發(fā)類就是Runnable.class,Runnable是一個接口,只要實現(xiàn)實現(xiàn)Runnables,重寫方法run() 就可以實現(xiàn)多線程操作。

舉個實現(xiàn)Runnable的例子:

public class LiftOff implements Runnable {
  protected int countDown = 10; // Default
  private static int taskCount = 0;
  private final int id = taskCount++;
  public LiftOff() {}
  public LiftOff(int countDown) {
    this.countDown = countDown;
  }
  public String status() {
    return "#" + id + "(" +
      (countDown > 0 ? countDown : "Liftoff!") + "), ";
  }
  public void run() {
    while(countDown-- > 0) {
      System.out.print(status());
      Thread.yield();
    }
  }
} ///:~
 public static void main(String[] args) {
    Thread t1 = new Thread(new LiftOff());
    t1.start();
}

從這個例子中,可以看出在java中多線程的實現(xiàn)多線程是很簡單的事,但是多線程的學習是易懂難通,會遇見死鎖、邏輯混亂等各類問題,所以使用多線程必須慎之又慎。
Runnable之后有一個基礎(chǔ)的并發(fā)類就是Thread.class,Thread就是實現(xiàn)了Runnable的一個類,但是在Runnable的基礎(chǔ)上新增了一些方法包括:線程優(yōu)先級、后臺線程、分組、命名等,還是非常實用的。

因此我們一般使用多線程可以實現(xiàn)Runnable.class或者繼承Thread.class.一般使用Runnable即可這樣還可以繼承其他類

好了本次文章就到這來,簡單地說明了java多線程的一些知識,下次會關(guān)于多線程方法更深入的闡述。

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/67048.html

相關(guān)文章

  • 并發(fā)編程死鎖解析

    摘要:如何檢測死鎖由于死鎖極難通過人工的方式查出來,因此提供了命令來檢測某個進程中心線程的情況,并排查有沒有死鎖。線程持有的鎖,等待的鎖。避免出現(xiàn)死鎖,如果出現(xiàn)了死鎖,則可以使用命令查看線程是否有死鎖。 showImg(https://segmentfault.com/img/remote/1460000014936757); 前言 在 Java 的并發(fā)編程中,有一個問題需要特別注意,那就是...

    yy736044583 評論0 收藏0
  • Java 8 并發(fā)教程:線程執(zhí)行器

    摘要:在這個示例中我們使用了一個單線程線程池的。在延遲消逝后,任務(wù)將會并發(fā)執(zhí)行。這是并發(fā)系列教程的第一部分。第一部分線程和執(zhí)行器第二部分同步和鎖第三部分原子操作和 Java 8 并發(fā)教程:線程和執(zhí)行器 原文:Java 8 Concurrency Tutorial: Threads and Executors 譯者:BlankKelly 來源:Java8并發(fā)教程:Threads和Execut...

    jsdt 評論0 收藏0
  • JAVA并發(fā)編程-Volatile關(guān)鍵字及內(nèi)存可見性

    摘要:的缺點頻繁刷新主內(nèi)存中變量,可能會造成性能瓶頸不具備操作的原子性,不適合在對該變量的寫操作依賴于變量本身自己。 作者:畢來生微信:878799579 1. 什么是JUC? JUC全稱 java.util.concurrent 是在并發(fā)編程中很常用的實用工具類 2.Volatile關(guān)鍵字 1、如果一個變量被volatile關(guān)鍵字修飾,那么這個變量對所有線程都是可見的。2、如果某條線程修...

    xcold 評論0 收藏0
  • Java并發(fā)編程多線程線程池

    摘要:目標線程由運行狀態(tài)轉(zhuǎn)換為就緒狀態(tài),也就是讓出執(zhí)行權(quán)限,讓其他線程得以優(yōu)先執(zhí)行,但其他線程能否優(yōu)先執(zhí)行時未知的。函數(shù)的官方解釋是意思是使調(diào)用該函數(shù)的線程讓出執(zhí)行時間給其他已就緒狀態(tài)的線程。 線程允許在同一個進程中同時存在多個程序控制流,即通過線程可以實現(xiàn)同時處理多個任務(wù)的功能。線程會共享進程范圍內(nèi)的資源,例如內(nèi)存句柄和文件句柄,但每個線程都有各自的程序計數(shù)器、棧以及局部變量。 多線程的實...

    wums 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<