中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Java多線程怎么才能協調好生產和消費的關系

發布時間:2021-12-01 17:07:21 來源:億速云 閱讀:117 作者:iii 欄目:編程語言

這篇文章主要介紹“Java多線程怎么才能協調好生產和消費的關系”,在日常操作中,相信很多人在Java多線程怎么才能協調好生產和消費的關系問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Java多線程怎么才能協調好生產和消費的關系”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!

Java多線程:是程序中的一個單一的連續控制流程,一個線程可以擁有多個線程 。記得剛學習Java多線程的時候,對線程中的run()不知道是什么意思,現在大膽認為它就像Java的main()一樣,可以理解為一個線程啟動運行的入口函數。

創建一個線程的方式有兩種,一種是繼承Thread類,還有就是實現Runnable 接口,兩者都要重寫run。

時間偏分給我們想要執行的線程時,可以將該線程的優先級設置Thread.MAX_PRIORITY .下面是一個生產者和消費者的多線程的例子:其規則很簡單,只有生產出來東西才能有東西來消費。

Java多線程知識點:線程的創建、線程的同步、順便回顧一下大學的操作系統。

class Test {  public static void main(String[] args) {  Queue q = new Queue();  Producer p = new Producer(q);  Consumer c = new Consumer(q);  p.start();  c.start();  }  }  class Producer extends Thread {  Queue q;  Producer(Queue q) {  this.q = q;  }  public void run() {  for (int i = 0; i < 10; i++) {  q.put(i);  System.out.println("Producer put " + i);  }  }  }  class Consumer extends Thread {  Queue q;  Consumer(Queue q) {  this.q = q;  }  public void run() {  while (true) {  System.out.println("Consumer get " + q.get());  }  }  }  class Queue {  int value;  boolean bFull = false;  public synchronized void put(int i) {  if (!bFull) {  value = i;  bFull = true;  notify();  }  try {  wait();  } catch (Exception e) {  e.printStackTrace();  }  }  public synchronized int get() {  if (!bFull) {  try {  wait();  } catch (Exception e) {  e.printStackTrace();  }  }  bFull = false;  notify();  return value;  }  }

到此,關于“Java多線程怎么才能協調好生產和消費的關系”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!

向AI問一下細節

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

AI

章丘市| 深泽县| 万盛区| 深州市| 崇左市| 荥阳市| 汪清县| 吐鲁番市| 天台县| 安新县| 交口县| 海盐县| 安庆市| 五大连池市| 津市市| 邵武市| 外汇| 招远市| 黔西县| 资中县| 环江| 阜新市| 新乡县| 宁明县| 措勤县| 崇礼县| 肇东市| 武邑县| 若羌县| 简阳市| 雷山县| 张家界市| 商城县| 汉阴县| 米易县| 鄢陵县| 抚远县| 门源| 铁岭市| 正镶白旗| 天峻县|