多執行緒案例
1、
寫兩個執行緒,一個執行緒列印1-52,另一個執行緒列印字母A-Z。
列印順序為12A34B56C……5152Z。
學習執行緒之間的通訊協調關係。
程式碼
執行緒類Thread01
package com.ljq.test; public class Thread01 implements Runnable { private Object obj; public Thread01(Object obj) { this.obj = obj; } public void run() { synchronized (obj) { for(int i = 1; i <= 26; i++) { System.out.print(2 * i - 1 + ""); System.out.print(2 * i + ""); obj.notifyAll(); try { obj.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } } }
執行緒類Thread02
package com.ljq.test; public class Thread02 implements Runnable { private Object obj; public Thread02(Object obj) { this.obj = obj; } public void run() { synchronized (obj) { for (char c = 'A'; c <= 'Z'; c++) { System.out.print(c + ""); obj.notifyAll(); try{ obj.wait(); } catch (InterruptedException e) { e.printStackTrace(); } } } } }
測試類ThreadTest
package com.ljq.test; public class ThreadTest { public static void main(String[] args) { Object obj = new Object(); Thread01 t1 = new Thread01(obj); Thread02 t2 = new Thread02(obj); Thread thread01 = new Thread(t1); Thread thread02 = new Thread(t2); thread01.start(); thread02.start(); } }
相關推薦
多執行緒案例產生的資料誤差
xl_echo編輯整理,歡迎轉載,轉載請宣告文章來源。更多IT、程式設計案例、資料請聯絡QQ:1280023003 百戰不敗,依不自稱常勝,百敗不頹,依能奮力前行。——這才是真正的堪稱強大!! 需求:一個電影院售票站,總共有四個視窗,但是隻有50張票,如何保證四個視窗售票的
多執行緒案例 Java
1、購票(不安全策略) 程式碼片段: public class Main { private static int ticket = 10; public static void main(String[] args) { Runnable r = new Ru
Java基礎之多執行緒案例-單生產單消費
在講單生產單消費之前,我們先來說一下執行緒間通訊的問題 一、 執行緒間通訊 概念:多個執行緒在處理同一個資源,但是處理的動作(執行緒的任務)卻不相同。 比如:執行緒A用來生成包子的,執行緒B用來吃包子的,包子可以理解為同一資源,執行緒A與執行緒B處理的動作,一個是生產,一個是消費,
java多執行緒案例1之簡單銀行取款問題及其優化
之前學java的時候,學校老師由於課時問題,沒有教我們多執行緒,最近學校外聘的企業教師給我們做實訓要用到多執行緒,因此才初步瞭解多執行緒,以下這個案例只是介紹java程式碼優化,程式碼中有涉及多執行緒,但今天不對其講解,只簡單講解程式碼優化的問題,希望對初學者有幫
多執行緒案例
1、 寫兩個執行緒,一個執行緒列印1-52,另一個執行緒列印字母A-Z。 列印順序為12A34B56C……5152Z。 學習執行緒之間的通訊協調關係。 程式碼 執行緒類Thread01 package com.ljq.test; public class Thread01 implements Run
JavaSE中多執行緒案例2(關於多執行緒通訊-等待與喚醒)
案例要求:有一個抽獎池,該抽獎池中存放了獎勵的金額,該抽獎池用一個數組int[] arr = {10,5,20,50,100,200,500,800,2,80,300}; 建立兩個抽獎箱(執行緒)設定執行緒名稱分別為“抽獎箱1”,“抽獎箱2”,隨機從arr陣列中獲取獎項元素並
Java學習--多執行緒案例--模擬火車票銷售(執行緒安全問題)
概述:火車票20張,三個視窗同時賣火車票 一.建立一個Runnable介面的實現類TicketSell,重寫run()方法 public class TicketSell implements
Java多執行緒實現電影院售票案例
某電影院目前正在上映賀歲大片,共有100張票,而它有3個售票視窗,請設計一個程式模擬該電影院售票。 定義Sell類實現Runnable介面,很好的解決了單繼承共享資源問題 public class Sell implements Runnable { // 定義100張票,三個售票
spider----利用多執行緒爬取51job案例
程式碼如下 import json from threading import Thread from threading import Lock from queue import Queue import requests from bs4 import BeautifulSoup i
非結構化資料與結構化資料提取---多執行緒爬蟲案例
多執行緒糗事百科案例 案例要求參考上一個糗事百科單程序案例 Queue(佇列物件) Queue是python中的標準庫,可以直接import Queue引用;佇列是執行緒間最常用的交換資料的形式 python下多執行緒的思考 對於資源,加鎖是個重要的環節。因為python原生的list,dict等,
JavaSE基礎學習筆記及案例(二)多執行緒(下)與簡單工廠模式的瞭解
1.多執行緒(下) 1.1單例設計模式:保證類在記憶體中只存在一個物件 ************餓漢式與懶漢式的區別【面試題】 餓漢式單例模式:以空間換時間 懶漢式單例模式:以時間換空間(不推薦使用,僅在面試中用到) 3.多執行緒訪問時:餓漢式不會建立多個物件;而懶漢式
JavaSE基礎學習筆記及案例(一)IO流與多執行緒(上)
IO流 1. IO流知識點 IO流(字元輸入流FileReader) 位元組輸入流 FileInputStream IO流(字元輸出流FileWriter) 位元組輸出流 FileOutputStream 字元緩衝區輸入流( BufferedReader) 位元組緩衝區輸入流Bu
java多執行緒入門案例(2)之多執行緒簡單應用
上一篇文章:java多執行緒案例(1)之簡單銀行取款問題及其優化 我大概介紹了一下Java程式碼優化的問題,主要針對出學者而言,這一次我要介紹多執行緒應用的簡單案例 。網上有許多多執行緒的案例,但大多都挺複雜的,今天我主要目的也是介紹一下多執行緒應用的簡單案例,讓初學
java多執行緒入門案例(1)之簡單銀行取款問題及其優化
之前學java的時候,學校老師由於課時問題,沒有教我們多執行緒,最近學校外聘的企業教師給我們做實訓要用到多執行緒,因此才初步瞭解多執行緒,以下這個案例只是介紹java程式碼優化,程式碼中有涉及多執行緒,但今天不對其講解,只簡單講解程式碼優化的問題,希望對初學
java中的Executors簡介與多執行緒在網站上逐步優化的運用案例
提供Executor的工廠類 忽略了自定義的ThreadFactory、callable和unconfigurable相關的方法 newFixedxxx:在任意時刻,最多有nThreads個執行緒在處理task;如果所有執行緒都在執行時來了新的任務,它會被扔
多執行緒程式碼小案例
public class TestThread { public static void main(String args[]) { RunnableEat R1 = new RunnableEat( "eat"
經典案例那個什麼多執行緒--賣票..........................就是好像有點不對~~!先寫下來.有大哥哥,大姐姐幫看下嗎
package javawork; public class RunnableDemo2 { public static void main(String[] args) { Runnable02 ru = new Runnable02(); Thread ru1 = new Thread(ru); T
201711671103《Java程式設計》多執行緒的應用案例
兩個人AB通過一個賬戶A在櫃檯取錢和B在ATM機取錢! 1.先建立一個Bank類 程式碼:package bank; public class Bank { static int money = 1000; &
JAVA多執行緒wait與notify詳細解析(由生產者和消費者案例引出)
生產者和消費者這個關係是個經典的多執行緒案例。現在我們編寫一個Demo來模擬生產者和消費者之間的關係。 假如有兩個類,一個是資料生產者類DataProvider,另一個是資料消費者類DataConsumer,這兩個類同時對資料類Data進行操作,生產者類負責生產資料,消費者類負責消費資料,下面是
Visual C++網路程式設計經典案例詳解 第3章 多執行緒與非同步套接字程式設計 實現執行緒同步 互斥物件 使用API函式操作互斥物件
互斥物件和臨界區物件和事件物件作用一樣 用於實現執行緒同步 互斥物件可以線上程中使用 CreateMutex()建立並返回互斥物件 原型如下 HANDLE CreateMutex( LPSECURITY_ATTIRIBUTES lpMutexAttributes,