日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 >

python秒杀商品 多线程_Python——多线程

發(fā)布時間:2024/9/15 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python秒杀商品 多线程_Python——多线程 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

簡單的創(chuàng)建多線程

import threading

# 導(dǎo)入模塊

import time

def xian1():

for i in range(3):

print("老子是第一")

time.sleep(1)

def xian2():

for i in range(3):

print("老子是第二")

time.sleep(1)

def main():

t1 = threading.Thread(target=xian1)

t2 = threading.Thread(target=xian2)

t1.start()

t2.start()

if __name__ == '__main__':

main()

用繼承threading模塊創(chuàng)建多線程類

import threading

# 導(dǎo)入模塊

import time

class A(threading.Thread): #創(chuàng)建一個類繼承threading模塊

def run(self):

for i in range(3):

print("老子是第一")

time.sleep(1)

class B(threading.Thread):

def run(self):

for i in range(3):

print("老子是第二")

time.sleep(1)

def main():

t1 = A()

t2 = B()

t1.start()

t2.start()

t2.run1().start()

if __name__ == '__main__':

main()

多線程? 創(chuàng)建鎖

importthreading#導(dǎo)入模塊

importtime

glock=threading.Lock()#創(chuàng)建鎖

value =0defrun ():globalvalue#上鎖

glock.acquire()for x in range(1000000):

value+= 1

print(value)

glock.release()#解鎖

defmain():for i in range(2):

t1= threading.Thread(target=run)

t1.start()if __name__ == '__main__':

main()

多線程,生產(chǎn)與消費(fèi)模式

importthreadingimportrandomimporttime#設(shè)置總錢數(shù)

zongmony = 1000

#創(chuàng)建鎖

glock =threading.Lock()#次數(shù)

times =0classscz(threading.Thread):defrun(self):globalzongmonyglobaltimeswhileTrue:#隨機(jī)生產(chǎn)一些錢

mony = random.randint(100, 1000)#生產(chǎn)好后建立鎖,

glock.acquire()#判斷是否生產(chǎn)了十次

if times >10:

glock.release()breakzongmony+=mony

times+=1

print("生產(chǎn)者生產(chǎn)了%d元,總共有%d元" %(mony,zongmony))#執(zhí)行完以后釋放鎖

glock.release()

time.sleep(0.5)classxfz(threading.Thread):defrun(self):globalzongmonyglobaltimeswhileTrue:#隨機(jī)消費(fèi)一些錢

xiaofei = random.randint(100, 1000)

glock.acquire()if xiaofei

zongmony-=xiaofeiprint("消費(fèi)者消費(fèi)%d元,剩余%d元"%(xiaofei , zongmony))else:if times >10:

glock.acquire()break

print("余額不足!!")

time.sleep(0.5)

glock.release()defmain():for i in range(5):

t=scz()

t.start()if i >= 2:

t1=xfz()

t1.start()if __name__ == '__main__':

main()

總結(jié)

以上是生活随笔為你收集整理的python秒杀商品 多线程_Python——多线程的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。