日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

Python 34(进程重点)

發(fā)布時間:2025/3/21 python 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Python 34(进程重点) 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

一:開啟進(jìn)程的兩種方式(*****)

?

#開啟進(jìn)程的方式一: from multiprocessing import Process import timedef task(name):print('%s is running' % name)time.sleep(3)print('%s is done' % name)# 在window系統(tǒng)上,開啟子進(jìn)程的操作必須放到if __name__ == '__main__'的子代碼中 if __name__ == '__main__':p = Process(target=task, args=('nuanxin',)) # Process(target=task,kwargs={'name':'nuanxin'})p.start() # 只是向操作系統(tǒng)發(fā)送了一個開啟子進(jìn)程的信號print('混世魔王')

?

終端打印:

子進(jìn)程? is? running

子進(jìn)程? is? done

Process finished with exit code 0

?

?

?

# 開啟進(jìn)程的方式二: from multiprocessing import Process import timeclass Myprocess(Process):def __init__(self, name):super().__init__()self.name = namedef run(self):print('%s is runing' % self.name)time.sleep(3)print('%s is done' % self.name)# windows系統(tǒng)上,開啟子進(jìn)程的操作系統(tǒng)必須放到if __name__ == '__main__'的子代碼中 if __name__ == '__main__':p = Myprocess('nuanxin')p.start() # 只是向操作系統(tǒng)發(fā)送了一個開啟進(jìn)程的信號print('混世魔王')

?

終端打印:

子進(jìn)程? is? running

子進(jìn)程? is? done

Process finished with exit code 0

?

?

二:進(jìn)程對象的join方法(*****)

?

# join:讓主進(jìn)程在原地等待,等待進(jìn)程運行完畢,不會影響進(jìn)程的執(zhí)行 from multiprocessing import Process import timedef task(name, n):print('%s is running' % name)time.sleep(3)print('%s is done' % name)if __name__ == '__main__':p1 = Process(target=task, args=('子1', 1))p2 = Process(target=task, args=('子2', 2))p3 = Process(target=task, args=('子3', 3))start = time.time()p1.start()p2.start()p3.start()time.sleep(5)p3.join() # 3 p1.join()p2.join()print('混世魔王', (time.time() - start)) # 5.027485609054565 5.029683589935303 5.025939464569092 start = time.time()p_l = []for i in range(1, 4):p = Process(target=task, args=('子%s' % i, i))p_l.append(p)p.start()for p in p_l:p.join()print('混世魔王', (time.time() - start))

終端打印:

子進(jìn)程? is? running

子進(jìn)程? is? running

子進(jìn)程? is? running

子進(jìn)程? is? done

子進(jìn)程? is? done

子進(jìn)程? is? done

Process finished with exit code 0
?

?

?

三:進(jìn)程對象之間內(nèi)存空間隔離(*****)

進(jìn)程和進(jìn)程之間的空間不會互相干擾,沒辦法直接獲取另一個進(jìn)程空間里的數(shù)據(jù),要獲取只有一種辦法,就是寫到文件里面再獲取

from multiprocessing import Processn=100 def task():global nn=0if __name__ == '__main__':p=Process(target=task)p.start()p.join()print(n) View Code

?

轉(zhuǎn)載于:https://www.cnblogs.com/zedong/p/9594095.html

總結(jié)

以上是生活随笔為你收集整理的Python 34(进程重点)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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