婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 手把手帶你了解python多進(jìn)程,多線程

手把手帶你了解python多進(jìn)程,多線程

熱門標(biāo)簽:地圖標(biāo)注審核表 宿遷星美防封電銷卡 ai電銷機器人源碼 ai電話機器人哪里好 湛江智能外呼系統(tǒng)廠家 西藏房產(chǎn)智能外呼系統(tǒng)要多少錢 外呼并發(fā)線路 百度地圖標(biāo)注沒有了 長沙高頻外呼系統(tǒng)原理是什么

說明

相應(yīng)的學(xué)習(xí)視頻見鏈接,本文只對重點進(jìn)行總結(jié)。

多進(jìn)程

重點(只要看下面代碼的main函數(shù)即可)

1.創(chuàng)建

2.如何開守護(hù)進(jìn)程

3.多進(jìn)程,開銷大,用for循環(huán)調(diào)用多個進(jìn)程時,后臺cpu一下就上去了

import time
import multiprocessing
import os
def dance(who,num):
    print("dance父進(jìn)程:{}".format(os.getppid()))
    for i in range(1,num+1):
        print("進(jìn)行編號:{}————{}跳舞。。。{}".format(os.getpid(),who,i))
        time.sleep(0.5)
def sing(num):
    print("sing父進(jìn)程:{}".format(os.getppid()))
    for i in range(1,num+1):
        print("進(jìn)行編號:{}----唱歌。。。{}".format(os.getpid(),i))
        time.sleep(0.5)
def work():
    for i in range(10):
        print("工作中。。。")
        time.sleep(0.2)
if __name__ == '__main__':
    # print("main主進(jìn)程{}".format(os.getpid()))
    start= time.time()
    #1 進(jìn)程的創(chuàng)建與啟動
    # # 1.1創(chuàng)建進(jìn)程對象,注意dance不能加括號
    # # dance_process = multiprocessing.Process(target=dance)#1.無參數(shù)
    # dance_process=multiprocessing.Process(target=dance,args=("lin",3))#2.以args=元祖方式
    # sing_process = multiprocessing.Process(target=sing,kwargs={"num":3})#3.以kwargs={}字典方式
    # # 1.2啟動進(jìn)程
    # dance_process.start()
    # sing_process.start()
    #2.默認(rèn)-主進(jìn)程和子進(jìn)程是分開的,主進(jìn)程只要1s就可以完成,子進(jìn)程要2s,主進(jìn)程會等所有子進(jìn)程執(zhí)行完,再退出
    # 2.1子守護(hù)主進(jìn)程,當(dāng)主一但完成,子就斷開(如qq一關(guān)閉,所有聊天窗口就沒了).daemon=True
    work_process = multiprocessing.Process(target=work,daemon=True)
    work_process.start()
    time.sleep(1)
    print("主進(jìn)程完成了!")#主進(jìn)程和子進(jìn)程是分開的,主進(jìn)程只要1s就可以完成,子進(jìn)程要2s,主進(jìn)程會等所有子進(jìn)程執(zhí)行完,再退出
    print("main主進(jìn)程花費時長:",time.time()-start)
    #

多線程


重點

1.創(chuàng)建

2.守護(hù)線程

3.線程安全問題(多人搶票,會搶到同一張)

import time
import os
import threading
def dance(num):
    for i in range(num):
        print("進(jìn)程編號:{},線程編號:{}————跳舞。。。".format(os.getpid(),threading.current_thread()))
        time.sleep(1)
def sing(count):
    for i in range(count):
        print("進(jìn)程編號:{},線程編號:{}----唱歌。。。".format(os.getpid(),threading.current_thread()))
        time.sleep(1)
def task():
    time.sleep(1)
    thread=threading.current_thread()
    print(thread)
if __name__ == '__main__':
    # start=time.time()
    # # sing_thread =threading.Thread(target=dance,args=(3,),daemon=True)#設(shè)置成守護(hù)主線程
    # sing_thread = threading.Thread(target=dance, args=(3,))
    # dance_thread = threading.Thread(target=sing,kwargs={"count":3})
    #
    # sing_thread.start()
    # dance_thread.start()
    #
    # time.sleep(1)
    # print("進(jìn)程編號:{}主線程結(jié)束...用時{}".format(os.getpid(),(time.time()-start)))
    for i in range(10):#多線程之間執(zhí)行是無序的,由cpu調(diào)度
        sub_thread = threading.Thread(target=task)
        sub_thread.start()

線程安全

由于線程直接是無序進(jìn)行的,且他們共享同一個進(jìn)程的全部資源,所以會產(chǎn)生線程安全問題(比如多人在線搶票,買到同一張)



#下面代碼在沒有l(wèi)ock鎖時,會賣出0票,加上lock就正常

import threading
import time
lock =threading.Lock()
class Sum_tickets:
    def __init__(self,tickets):
        self.tickets=tickets
def window(sum_tickets):
    while True:
        with lock:
            if sum_tickets.tickets>0:
                time.sleep(0.2)
                print(threading.current_thread().name,"取票{}".format(sum_tickets.tickets))
                sum_tickets.tickets-=1
            else:
                break
if __name__ == '__main__':
    sum_tickets=Sum_tickets(10)
    sub_thread1 = threading.Thread(name="窗口1",target=window,args=(sum_tickets,))
    sub_thread2 = threading.Thread(name="窗口2",target=window,args=(sum_tickets,))
    sub_thread1.start()
    sub_thread2.start()

高并發(fā)拷貝(多進(jìn)程,多線程)

import os
import multiprocessing
import threading
import time
def copy_file(file_name,source_dir,dest_dir):
    source_path = source_dir+"/"+file_name
    dest_path =dest_dir+"/"+file_name
    print("當(dāng)前進(jìn)程為:{}".format(os.getpid()))
    with open(source_path,"rb") as source_file:
        with open(dest_path,"wb") as dest_file:
            while True:
                data=source_file.read(1024)
                if data:
                    dest_file.write(data)
                else:
                    break
    pass
if __name__ == '__main__':
    source_dir=r'C:\Users\Administrator\Desktop\注意力'
    dest_dir=r'C:\Users\Administrator\Desktop\test'
    start = time.time()
    try:
        os.mkdir(dest_dir)
    except:
        print("目標(biāo)文件已存在")
    file_list =os.listdir(source_dir)
    count=0
    #1多進(jìn)程
    for file_name in file_list:
        count+=1
        print(count)
        sub_processor=multiprocessing.Process(target=copy_file,
                                args=(file_name,source_dir,dest_dir))
        sub_processor.start()
        # time.sleep(20)
    print(time.time()-start)
#這里有主進(jìn)程和子進(jìn)程,通過打印可以看出,主進(jìn)程在創(chuàng)建1,2,3,4,,,21過程中,子進(jìn)程已有的開始執(zhí)行,也就是說,每個進(jìn)程是互不影響的
# 9
# 10
# 11
# 12
# 13
# 當(dāng)前進(jìn)程為:2936(當(dāng)主進(jìn)程創(chuàng)建第13個時,此時,第一個子進(jìn)程開始工作)
# 14
# 當(dāng)前進(jìn)程為:10120
# 當(dāng)前進(jìn)程為:10440
# 15
# 當(dāng)前進(jìn)程為:9508
    # 2多線程
    # for file_name in file_list:
    #     count += 1
    #     print(count)
    #     sub_thread = threading.Thread(target=copy_file,
    #                                             args=(file_name, source_dir, dest_dir))
    #     sub_thread.start()
    #     # time.sleep(20)
    # print(time.time() - start)

總結(jié)

本篇文章就到這里了,希望能給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

您可能感興趣的文章:
  • 分析詳解python多線程與多進(jìn)程區(qū)別
  • Python多進(jìn)程共享numpy 數(shù)組的方法
  • 總結(jié)python多進(jìn)程multiprocessing的相關(guān)知識
  • Python多線程與多進(jìn)程相關(guān)知識總結(jié)
  • python實現(xiàn)多進(jìn)程并發(fā)控制Semaphore與互斥鎖LOCK
  • python 多進(jìn)程和多線程使用詳解
  • python 實現(xiàn)多進(jìn)程日志輪轉(zhuǎn)ConcurrentLogHandler
  • Python多進(jìn)程與多線程的使用場景詳解
  • python多進(jìn)程執(zhí)行方法apply_async使用說明
  • Python 多進(jìn)程原理及實現(xiàn)
  • python多線程和多進(jìn)程關(guān)系詳解
  • Python多進(jìn)程的使用詳情

標(biāo)簽:海南 盤錦 南平 大同 普洱 林芝 寧夏 漯河

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《手把手帶你了解python多進(jìn)程,多線程》,本文關(guān)鍵詞  手把手,帶你,了解,python,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《手把手帶你了解python多進(jìn)程,多線程》相關(guān)的同類信息!
  • 本頁收集關(guān)于手把手帶你了解python多進(jìn)程,多線程的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    亚洲色图制服诱惑 | 国产亚洲1区2区3区| 成人激情免费视频| 日本亚洲一区二区| 亚洲精品国产a| 久久免费偷拍视频| 欧美xxx久久| 91麻豆精品国产91久久久资源速度 | 亚洲人成精品久久久久久| 欧美大胆一级视频| 欧美精三区欧美精三区| 日本高清不卡视频| 91国产视频在线观看| 91蜜桃传媒精品久久久一区二区 | 精品理论电影在线观看| 欧美日韩国产免费| 欧美性色黄大片手机版| 92精品国产成人观看免费| 99久久综合色| 高清不卡一区二区| 麻豆极品一区二区三区| 自拍偷拍亚洲欧美日韩| 欧美日韩在线三区| 色综合久久中文字幕综合网| 国产99久久久国产精品潘金 | 激情六月婷婷综合| 欧美aa在线视频| 免费成人性网站| 蜜臀av性久久久久蜜臀aⅴ流畅| 视频一区二区三区入口| 午夜精品福利视频网站| 日本不卡1234视频| 日韩成人一级片| 久国产精品韩国三级视频| 欧美一级精品大片| 欧美日韩你懂的| 欧美猛男gaygay网站| 欧美军同video69gay| 69久久夜色精品国产69蝌蚪网| 欧美一区二区三区性视频| 日韩欧美精品在线| 久久久久久久综合| 国产精品乱码久久久久久| 亚洲精品国产一区二区精华液| 一区二区三区高清| 蜜桃视频免费观看一区| 国产精品一区免费视频| 色婷婷综合久久久久中文一区二区| 91在线观看高清| 日本福利一区二区| 一本一道波多野结衣一区二区 | 欧美日韩一区国产| 精品夜夜嗨av一区二区三区| 国产精品一卡二卡| 色视频成人在线观看免| 91精品国产综合久久香蕉麻豆| 26uuu精品一区二区| 亚洲精品成人少妇| 裸体歌舞表演一区二区| 一本一本大道香蕉久在线精品 | 91啪亚洲精品| 欧美一区二区在线观看| 亚洲日韩欧美一区二区在线| 午夜一区二区三区视频| 国产成人自拍网| 欧美日韩免费不卡视频一区二区三区| 欧美激情一区在线观看| 日产欧产美韩系列久久99| 国产剧情在线观看一区二区| 欧美精品久久99| 国产精品不卡在线| 国内精品视频一区二区三区八戒 | 久久久久88色偷偷免费 | 成人sese在线| 欧美一区二区三区成人| 亚洲激情网站免费观看| 国产成人亚洲综合a∨婷婷| 91精品欧美久久久久久动漫| 中文字幕国产精品一区二区| 国产一区二区久久| 91精品国产91久久综合桃花| 伊人开心综合网| 99视频一区二区| 久久丝袜美腿综合| 久久精品国产一区二区| 欧美日韩一区二区三区四区 | 亚洲视频香蕉人妖| 精久久久久久久久久久| 在线不卡的av| 亚洲国产综合人成综合网站| 日本高清无吗v一区| 一区二区三区波多野结衣在线观看 | 久久美女高清视频| 国内精品伊人久久久久影院对白| 91精品国产91久久久久久最新毛片| 洋洋成人永久网站入口| 99久久精品国产观看| 亚洲精品菠萝久久久久久久| 在线观看亚洲精品| 亚洲国产精品精华液网站| 欧美日韩一级视频| 日韩精品91亚洲二区在线观看| 欧美日本一道本在线视频| 亚洲天天做日日做天天谢日日欢| 91香蕉视频在线| 一区二区三区国产精品| 欧美日韩中文字幕精品| 日韩精品亚洲专区| 日韩欧美成人激情| 天天av天天翘天天综合网色鬼国产| 亚洲国产一区视频| 日韩欧美www| 免费看日韩精品| 精品噜噜噜噜久久久久久久久试看 | 看片的网站亚洲| 日韩一级精品视频在线观看| 久久99精品国产.久久久久久 | 国产亚洲一区字幕| 99视频超级精品| 亚洲一区二区三区在线播放| 91.成人天堂一区| 奇米777欧美一区二区| 久久精品欧美日韩| 欧美日韩日日骚| 国产一区二区在线看| 亚洲人成人一区二区在线观看 | 成人动漫中文字幕| 一区二区三区欧美在线观看| 欧美videossexotv100| 国产成人精品网址| 亚洲成人免费av| 久久亚洲一区二区三区四区| 日本电影亚洲天堂一区| 精品影院一区二区久久久| 偷拍一区二区三区| 亚洲成精国产精品女| 1024国产精品| 国产精品国产三级国产普通话99| 欧美精品一区二区三区视频| 91精品国产综合久久香蕉麻豆| 欧美日韩在线播放三区| 欧美亚洲免费在线一区| 91网站黄www| 91网页版在线| 一本色道久久综合亚洲91| 99久久国产综合精品女不卡| 国产a区久久久| av在线播放成人| 99国产精品一区| 91最新地址在线播放| 91伊人久久大香线蕉| 91免费视频大全| 欧亚一区二区三区| 777欧美精品| 欧美一级在线观看| 精品sm捆绑视频| 国产亚洲成av人在线观看导航 | 成人一道本在线| 成人av影视在线观看| av亚洲精华国产精华精华| 成人小视频在线观看| 成人免费视频一区| 在线欧美小视频| 欧美日韩视频一区二区| 日韩手机在线导航| 欧美aⅴ一区二区三区视频| 亚洲图片激情小说| 亚洲综合色区另类av| 国产欧美日韩精品一区| 3atv一区二区三区| 日韩欧美一区电影| 91精品国产高清一区二区三区 | 国产亚洲精品bt天堂精选| 国产成人免费在线观看不卡| 一本色道a无线码一区v| 91在线小视频| 日韩国产高清影视| 亚洲精品乱码久久久久久| 亚洲h在线观看| 另类综合日韩欧美亚洲| 成人aaaa免费全部观看| 欧美日韩国产高清一区二区| 久久综合九色综合97婷婷女人 | 99久久国产综合精品女不卡| 欧美最新大片在线看| 久久久综合视频| 亚洲成人自拍网| 国产精品一区一区三区| 欧美乱熟臀69xxxxxx| 国产欧美一区二区精品性| 婷婷激情综合网| 国产精品一二三区| 欧美人成免费网站| 中文字幕在线观看一区| 麻豆精品久久久| 色丁香久综合在线久综合在线观看| 欧美一级精品大片| 一区二区不卡在线播放| 成人免费毛片高清视频| 欧美一卡二卡在线观看|