91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

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

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

如何進行Java任務隊列的定義與代碼的分析

發布時間:2021-11-20 17:53:39 來源:億速云 閱讀:330 作者:柒染 欄目:編程語言

如何進行Java任務隊列的定義與代碼的分析,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

Java任務隊列需要我們詳細的學習,當然我們在不斷的使用中還需要注意相關信息的學習。下面我們就先來看看TaskQueue(任務隊列)的具體應用。下面我們就詳細的學習下。

在同一時刻,可能有很多任務需要執行,而程序在同一時刻只能執行一定數量的任務,當需要執行的任務數超過了程序所能承受的任務數時怎么辦呢?這就有了先執行哪些任務,后執行哪些任務的規則。

TaskQueue類就定義了這些規則中的一種,它采用的是FIFO(先進先出,英文名是First In First Out)的方式,也就是按照任務到達的先后順序執行。TaskQueue類的定義。

Java任務隊列代碼如下:

import java.util.Iterator;   import java.util.LinkedList;   import java.util.List;   public class TaskQueue {   private List<Task> queue = new LinkedList<Task>();   // 添加一項任務   public synchronized void addTask(Task task) {   if (task != null) {   queue.add(task);   }   }   // 完成任務后將它從任務隊列中刪除   public synchronized void finishTask(Task task) {   if (task != null) {   task.setState(Task.State.FINISHED);   queue.remove(task);   }   }   // 取得一項待執行任務   public synchronized Task getTask() {   Iterator<Task> it = queue.iterator();   Task task;   while (it.hasNext()) {   task = it.next();   // 尋找一個新建的任務   if (Task.State.NEW.equals(task.getState())) {   // 把任務狀態置為運行中   task.setState(Task.State.RUNNING);   return task;   }   }   return null;   }   }   import java.util.Iterator;  import java.util.LinkedList;  import java.util.List;  public class TaskQueue {  private List<Task> queue = new LinkedList<Task>();  // 添加一項任務  public synchronized void addTask(Task task) {  if (task != null) {  queue.add(task);  }  }  // 完成任務后將它從任務隊列中刪除  public synchronized void finishTask(Task task) {  if (task != null) {  task.setState(Task.State.FINISHED);  queue.remove(task);  }  }  // 取得一項待執行任務  public synchronized Task getTask() {  Iterator<Task> it = queue.iterator();  Task task;  while (it.hasNext()) {  task = it.next();  // 尋找一個新建的任務  if (Task.State.NEW.equals(task.getState())) {  // 把任務狀態置為運行中  task.setState(Task.State.RUNNING);  return task;  }  }  return null;  }  }

關于如何進行Java任務隊列的定義與代碼的分析問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注億速云行業資訊頻道了解更多相關知識。

向AI問一下細節

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

AI

禹城市| 旬邑县| 大厂| 黔西| 西畴县| 富蕴县| 黄石市| 宾川县| 东安县| 长治县| 肇源县| 凤山市| 盐源县| 中西区| 峨山| 阳江市| 陆川县| 北安市| 卢龙县| 合肥市| 和田市| 漠河县| 南通市| 中山市| 石楼县| 东乡族自治县| 三亚市| 尚义县| 溧水县| 乌海市| 册亨县| 浦县| 铜山县| 静乐县| 贵州省| 龙泉市| 汽车| 托里县| 闵行区| 乌恰县| 衢州市|