亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Python使用面向對象方式創建線程實現12306售票系統

系統 1755 0

目前python 提供了幾種多線程實現方式 thread,threading,multithreading ,其中thread模塊比較底層,而threading模塊是對thread做了一些包裝,可以更加方便的被使用。

面向對象技術簡介

類(Class): 用來描述具有相同的屬性和方法的對象的集合。它定義了該集合中每個對象所共有的屬性和方法。對象是類的實例。

類變量: 類變量在整個實例化的對象中是公用的。類變量定義在類中且在函數體之外。類變量通常不作為實例變量使用。

數據成員: 類變量或者實例變量用于處理類及其實例對象的相關的數據。

方法重寫: 如果從父類繼承的方法不能滿足子類的需求,可以對其進行改寫,這個過程叫方法的覆蓋(override),也稱為方法的重寫。

實例變量: 定義在方法中的變量,只作用于當前實例的類。

繼承: 即一個派生類(derived class)繼承基類(base class)的字段和方法。繼承也允許把一個派生類的對象作為一個基類對象對待。例如,有這樣一個設計:一個Dog類型的對象派生自Animal類,這是模擬"是一個(is-a)"關系(例圖,Dog是一個Animal)。

實例化: 創建一個類的實例,類的具體對象。

方法: 類中定義的函數。

對象: 通過類定義的數據結構實例。對象包括兩個數據成員(類變量和實例變量)和方法。

---恢復內容開始---

通過面向對象的方法實現多線程,其核心是繼承threading.Thread類。我們自己定義了一個類BoothThread, 這個類繼承自thread.Threading類,通過修改Thread類的run()方法來定義線程所要執行的命令。

            
import threading # Python主要通過標準庫中的threading包來實現多線程
import time
import os
#作為間隔 每次調用間隔.s
def doChore():
time.sleep(.)
# 定義一個類BoothThread繼承自thread.Threading類
class BoothThread(threading.Thread):
def __init__(self, tid, monitor):
self.tid = tid
self.monitor = monitor
threading.Thread.__init__(self)
def run(self):
while True:
monitor['lock'].acquire() # 調用lock.acquire() 加鎖
if monitor['tick'] != :
monitor['tick'] = monitor['tick'] - # 售票 售出一張減少一張
print(self.tid,':now left:',monitor['tick']) # 剩下的票數
doChore() 
else:
print("Thread_id",self.tid," No more tickets")
os._exit() # 票售完 退出程序
monitor['lock'].release() # 釋放鎖
doChore() 
monitor = {'tick':, 'lock':threading.Lock()} # 初始化票數
# 總共設置了個線程
for k in range():
new_thread = BoothThread(k, monitor) # 創建線程; Python使用threading.Thread對象來代表線程 類BoothThread繼承自thread.Threading類 
new_thread.start() # 調用start()方法啟動線程 
          

這里使用了一個詞典 monitor存放全局變量,然后把詞典作為參數傳遞給線程函數。由于詞典是可變數據對象,所以當它被傳遞給函數的時候,函數所使用的依然是同一個對象,相當于被多個線程所共享。

以上內容給大家介紹了Python使用面向對象方式創建線程實現12306售票系統的全部敘述,希望大家喜歡。


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 99热这里只有精品在在 | 久青草视频免费观看青 | 国产一区在线观看免费 | 午夜影院毛片 | 国产日日干| 久久99蜜桃精品久久久久小说 | 手机看片国产免费久久网 | 国产精品一区在线观看 | 亚洲欧美日韩国产精品影院 | 免费看欧美一级特黄a大片一 | 四虎免费大片aⅴ入口 | 免费网站日本永久免费观看 | 中文字幕在线观看不卡视频 | 欧美一级片网址 | 一本伊在人香蕉线观新在线 | 亚洲字幕久久 | 日本高清中文字幕在线观穿线视频 | 日本特黄一级午夜剧场毛片 | 亚洲欧美日韩中文字幕网址 | 亚洲最大激情中文字幕 | 综合网亚洲 | 精品久久网 | 性生活视频免费 | 久久91精品综合国产首页 | 日日干日日草 | 免费一级毛片在线播放泰国 | 久久草精品视频 | 中文字幕久久久久久久系列 | 精品国产综合区久久久久99 | 91综合精品网站久久 | 色综合久久久高清综合久久久 | 久久综合综合久久 | 国产真实伦偷精品 | 狠狠色丁香久久婷婷综合丁香 | 国产成人综合高清在线观看 | 国产精品久久久久久久久99热 | 久久精品在线 | 九九视频高清视频免费观看 | 四虎在线精品观看免费 | 久久国产精品99久久久久久老狼 | 日本一本一道久久香蕉免费 |