多執行緒例項--多人同時取錢
A從櫃檯取,B從ATM取錢
package com.xjh.demo.thread; public class MoneyTest { public static void main(String[] args) { Bank bank = new Bank(); new PersonB(bank,800).start(); new PersonA(bank,600).start(); new PersonA(bank,500).start(); } } class Bank { static int total = 10000; public void station(int num) { Bank.total -= num; System.out.println("A取出" + num + "元,還剩:" + Bank.total + "元"); } public void atm(int num) { Bank.total -= num; System.out.println("B取出" + num + "元,還剩:" + Bank.total + "元"); } } class PersonA extends Thread { Bank bank; int money; public PersonA(Bank bank, int money) { this.bank = bank; this.money = money; } @Override public void run() { while (Bank.total >= money) { bank.station(money); try { sleep(100); } catch (Exception e) { e.printStackTrace(); } } } } class PersonB extends Thread { Bank bank; int money; public PersonB(Bank bank, int money) { this.bank = bank; this.money = money; } @Override public void run() { while (Bank.total >= money) { bank.atm(money); try { sleep(100); } catch (Exception e) { } } } }
相關推薦
多執行緒例項--多人同時取錢
A從櫃檯取,B從ATM取錢 package com.xjh.demo.thread; public class MoneyTest { public static void main(String[] args) { Bank bank = ne
多執行緒例項二----兩個人同時存取錢
java 多執行緒簡單例項二----兩個人同一個賬戶取錢 思路:兩個執行緒,一個代表取錢的操作,一個代表存錢的操作,互相不影響,但是要保證存取的資料正確。 程式碼如下: package com.shone.thread.getmoney; /** * Created b
多執行緒例項一----三個視窗同時賣票
package com.shone.thread.ticket; /** * Created by Xiao GuoJian on 2018/1/24. * 三個視窗同時賣票 */ /** * 票 */ class Ticket { private i
Python多執行緒、多程序和協程的例項講解
執行緒、程序和協程是什麼 執行緒、程序和協程的詳細概念解釋和原理剖析不是本文的重點,本文重點講述在Python中怎樣實際使用這三種東西 參考: 程序、執行緒、協程之概念理解 程序(Process)是計算機中的程式關於某資料集合上的一次執行活動,是系統進行資源分配和排程的基本單位,是作業系統結構的基礎。執
Python多執行緒例項
相關文件 Python多執行緒的實現和原理 執行緒與程序 執行緒是程序內一個執行單元,也是程序內的可排程實體。 執行緒與程序的區別: 地址空間,程序獨立空間,執行緒共享程序內的地址空間 資源分配,程序是系統資源排程及分派的基本單位 執行緒是處理器排程的
一個Python多執行緒例項
水果分配的問題: 桌上有一隻盤子,每次只能放入5只水果。爸爸專放蘋果, 媽媽專放橘子,一個兒子專等吃盤子中的橘子,一個女兒專等吃盤子中的蘋果.用P,V操作實現爸爸、媽媽、兒子、女兒程序的同步控制。 貼一下程式碼: import random import threa
c++多執行緒例項
主要總結了基於C++的多執行緒函式CreateThread,互斥鎖(或者稱資源獨佔)函式CreateMutex,等待資源函式WaitForSingleObject,關閉執行緒函式(其實是關閉執行緒的控制代碼)CloseHanlde,釋放互斥鎖函式ReleaseMutex的
201711671125 Java多執行緒例項(第十一週)
建立3個售票視窗同時開始銷售10張票。 原始碼: public class One { public static void main(String[] args) { Ti
Java裸寫爬蟲技術,運用多執行緒技術,高效爬取某個醫療機構網站資料
最近喜歡上了資料的龐大的感覺,就爬取了一下某個醫療機構網站醫療資料,由於資料量龐大,只爬取了江西省的各個市的各個醫院的各個科室的各個科室。中各種資訊。其中用的持久層技術是hibernate框架,和用到一
多執行緒與協程爬取使用方法
#多執行緒與協程的使用會大大加速抓取速度,多執行緒算併發會產生重複和寫入衝突等問題,協程會自動切換這塊比較好點 分別主要是兩個模組,多執行緒threading,協程gevent 1、多執行緒threading版 ***多執行緒使用最主要就是給個執行緒分配內容的問題,這有些小技巧,主要就是
用多執行緒實現多使用者同時收發的簡單socket服務端
簡單的socket程式碼和多執行緒練習用socket服務端和多執行緒實現可以連線多個客戶端並同時收發的功能。這裡要用到socket 和 threading所以,記得:import socket, threading一、建立socket服務端首先,按正常操作,建立一個socke
執行緒例項模仿人在銀行取錢
package thread; public class Bank{ private String name;public String getName() {return name;}public void setName(String name) {this.name = name;}public Ba
佇列+多執行緒例項
原文章連結:https://blog.csdn.net/cai_chinasoft/article/details/51566632 第一步:建立一個無邊界自動回收的執行緒池,在此用 JDK提供的ExecutorService類此執行緒池。如果執行緒池的大小超過了處理任務所需
Java 多執行緒實現多個視窗同時賣票
建立執行緒的第二種方式:實現Runable介面 步驟: 1,定義類實現Runnable介面 2,覆蓋Runnable介面中的run方法。將執行緒要執行的程式碼存放在該run方法中。 3,通過Thread類建立執行緒物件。 4,將Runnable介面的子類物件作為實際引數傳遞
TCP-IP學習筆記四:NIO的網路程式設計-多執行緒例項
TCP/IP學習筆記四:NIO的網路程式設計-多執行緒例項 標籤(空格分隔): 網路程式設計 NIO 多執行緒 NIO的多執行緒程式設計 對於單執行緒的程式來說,我們無法達到並行處理,我們要向達到並行處理,必定會使用多執行緒,但是我們哪些程式碼
java多執行緒例項解析
多執行緒含義: 1、首先從巨集觀上解釋一下多執行緒到底是個什麼東西,我們拿一個生活中例子來看一下;汽車上高速和出高速的時候都需要經過收費站吧,我們可以腦補下這個場景;現在汽車要下高速,收費站最主要的任務是對每輛車進行收費,這樣我們可以把收費站看成一個程式方法體,專門處理收費
多執行緒例項之簡單的賣票程式 ------記錄與畢向東老師視訊
/*簡單的賣票程式,多個視窗同時實現 1.定義類的實現Runnable介面 2.覆蓋Runnable介面中的run方法。將執行緒要執行的程式碼存放在該run方法中。 3.通過Thread類建立執行緒物件。 4.講Runnable介面的子類物件作為實際引數傳遞給Thread類
C++多執行緒例項(_beginThreadex建立多執行緒)
C++多執行緒(二)(_beginThreadex建立多執行緒) C/C++ Runtime 多執行緒函式 一 簡單例項(來自codeprojct:http://www.codeproject.com/useritems/MultithreadingTutorial.asp) 主執行緒建立2個執行緒t1
在BCB中使用多執行緒例項
多執行緒程式設計是提高系統資源利用率的一種常見方式。它佔用的資源更小,啟動更快,還可以實現在後臺執行一些需時較長的操作。一、初識TThread物件VCL提供了用於多執行緒程式設計的TThread類,在這個類中封裝了Windows關於執行緒機制的Windows API,通常將
C++之多執行緒(POSIX多執行緒例項)
1.程序同時建立5個執行緒,各自呼叫同一個函式 #include <iostream> #include <pthread.h> //多執行緒相關操作標頭檔案,可移植眾多平臺 using namespace std; #define NUM_TH