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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python之操作系统介绍,进程的创建

發(fā)布時間:2024/4/15 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python之操作系统介绍,进程的创建 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

操作系統(tǒng)(英語:operating system,縮寫作?OS)是管理計算機硬件與軟件資源的計算機程序,同時也是計算機系統(tǒng)的內核與基石。操作系統(tǒng)需要處理如管理與配置內存、決定系統(tǒng)資源供需的優(yōu)先次序、控制輸入與輸出設備、操作網絡與管理文件系統(tǒng)等基本事務。操作系統(tǒng)也提供一個讓用戶與系統(tǒng)交互的操作界面。

操作系統(tǒng)簡單介紹:

  多道程序設計技術

    空間復用

    時間復用

    進程之間是空間隔離的

  分時系統(tǒng)

  實時系統(tǒng)

  通用操作系統(tǒng)

并發(fā):偽并行,看著像同時運行,其實是任務之間的切換(遇到io切換的會提高代碼效率) ,任務切換+保存狀態(tài)(保存現(xiàn)場)

并行:真正的同時在運行,應用的是多核技術(多個cpu)

?

進程三狀態(tài):就緒(等待操作系統(tǒng)調度去cpu里面執(zhí)行)? ? ??執(zhí)行 ?阻塞

?

?

提交任務的方式:同步異步 ??任務的執(zhí)行狀態(tài):阻塞非阻塞

  異步:任務的提交方式,多個任務提交出去,同時執(zhí)行

?分類:

  同步阻塞

  異步阻塞:

  異步非阻塞:

  同步非阻塞:

進程的2種創(chuàng)建方式:

第一種:

import time from multiprocessing import Processdef f1():time.sleep(3)print('我同桌是豬')print(time.strftime('%Y-%m-%d %H:%M:%S', time.localtime())) def f2():time.sleep(3)print('還偷偷睡覺')print(time.strftime('%Y-%m-%d %H:%M:%S',time.localtime()))if __name__ == '__main__':p1 = Process(target=f1,)p2 = Process(target=f2, )p1.start()p2.start()

?

?

?第二種方式: 創(chuàng)建一個類,繼承Process

from multiprocessing import Process class MyProcess(Process):def __init__(self,n):super().__init__() #別忘了執(zhí)行父類的initself.n = ndef run(self):print('%s快要睡著了'%self.n)if __name__ == '__main__':p1 = MyProcess('Jerry')p1.start()

?

?傳參方式:

from multiprocessing import Process # 演示兩種傳參方式 def f1(n):print(n)if __name__ == '__main__':# p1 = Process(target=f1,args=('Jerry',)) #創(chuàng)建進程對象p1 = Process(target=f1,kwargs={'n':'Jerry'}) # 創(chuàng)建進程對象 kwargs={函數中的形參作為key:值}p1.start() #給操作系統(tǒng)發(fā)送了一個創(chuàng)建進程的信號,后續(xù)進程的創(chuàng)建都是操作系統(tǒng)的事兒了

?

for 循環(huán)創(chuàng)建進程:

import time from multiprocessing import Processdef f1(i):time.sleep(3)print(i) if __name__ == '__main__':for i in range(20):p1 = Process(target=f1,args=(i,))p1.start()

?

join()方法:主進程等待子進程運行完才繼續(xù)執(zhí)行

import time from multiprocessing import Processdef f1():time.sleep(2)print('我是f1')def f2():time.sleep(2)print('我是f2')if __name__ == '__main__':p1 = Process(target=f1,)p1.start()p1.join() # 主進程等待子進程運行完才繼續(xù)執(zhí)行print('p2來了')p2 = Process(target=f2,)p2.start()p2.join()print('我要等了...等我的子進程...')print('我是主進程!!!')

轉載于:https://www.cnblogs.com/selina1997/p/10240873.html

總結

以上是生活随笔為你收集整理的python之操作系统介绍,进程的创建的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。