python併發程式設計 程序,併發

2021-08-21 08:22:09 字數 1141 閱讀 4101

1.程序是乙個正在執行的程式,或者說是程式執行的過程,程序是個抽象概念

程序起源於作業系統,是作業系統最核心的概念,作業系統所有其他的概念都是圍繞程序展開

研究程序最底層就是在研究作業系統底層**

2.序列 -程序

乙個任務完完整整的執行完畢後,在執行下乙個任務

3.併發-程序

看起來多個任務是同時執行即可,單核也可以實現併發

4.-並行-程序

真正意義上多個任務的同時執行,只要多核才實現並行

5.cpu的功能:

cpu是用來做計算的,cpu無法執行io操作,一旦遇到io操作,應該讓cpu去執行別的任務

6.多道技術原理:

多道技術中的多道指的是多個程式,多道技術的實現是為了解決多個程式競爭或者說共享同乙個資源(比如cpu)的有序排程問題,

解決方式即多路復用,多路復用分為時間上的復用和空間上的復用。

1.空間上的復用=》將記憶體分為幾個部分,每個部分放入乙個程式,這種同一時間記憶體中就有多個程序程式

2.時間上的復用-》當乙個程式執行io操作時候,另乙個程式可以使用cpu。如果記憶體中可以存放多個程序程式,那麼cpu的利用率可以接近100%

作業系統採用了多道技術後,可以控制程序的切換,或者說程序之間去爭搶cpu的執行許可權。這種切換不僅會在乙個程序遇到io時進行,乙個程序占用cpu時間過長也會切換,或者說被作業系統奪走cpu的執行許可權

強調

:遇到io切,占用cpu時間過長也切,核心在於切之前將程序的狀態儲存下來,這樣就可以保證下次切回來時,能基於上次切走的位置繼續執行!

7.  兩種cpu切換控制:

1,cpu遇到io操作時切換:可以提公升效率

2.乙個程序占用cpu時間過長也會被切走:併發效果不得已而為之,這樣反而會降低程式的執行效率

總結:寫程式最核心的提公升效率的方式:就是盡可能減少io操作

Python併發程式設計 程序

1.意義 充分利用計算機多核資源,提高程式的執行效率。2.實現方案 多程序 多執行緒 3.並行與併發 1.定義 程式在計算機中的一次執行。2.系統中如何產生乙個程序 使用者空間通過呼叫程式介面或者命令發起請求 作業系統接收使用者請求,開始建立程序 作業系統調配計算機資源,確定程序狀態等 作業系統將建...

python併發程式設計 多程序

import os import time from multiprocessing import process def func args,args2 print args,args2 time.sleep 3 print 子程序 os.getpid print 子程序的父程序 os.getpp...

python 併發程式設計 守護程序

1.守護程序 守護程序會隨著主程序的 執行結束而結束。語法 程序物件.daemon true時,表示將程序設定為守護程序,一定在start之前設定。import time from multiprocessing import process class myprocess process defr...