內容概要
內容詳情
一、程序補充
殭屍程序與孤兒程序
殭屍程序主程序**執行完成之後不會直接結束,而是要等待所有子程序執行完**他們的資源之後才能結束。
孤兒程序主程序已經死亡(非正常死亡),兒子程序還在執行中。
守護程序
守護程序: 守護著某個程序,一旦守護的程序結束,守護的程序也會隨之結束
from multiprocessing import互斥鎖process
import
time
deftest(name):
print("
總管:%s is running
" %name)
time.sleep(3)
print('
總管: %s is over
' %name)
if__name__=='
__main__':
p = process(target=test, args=('
jason
',))
#把p程序設定為守護程序
p.daemon = true #
設定為守護程序
p.start()
print("
皇帝駕崩了")
time.sleep(0.1)
print('
被守護的主程序')
##執行結果
「『d:\python36\python.exe d:/users/admin/pycharmprojects/pythonproject6/殭屍程序/守護程序.py
皇帝駕崩了
總管:jason
isrunning
被守護的主程序」「
##守護程序is over 不會執行,因為主程序結束後,p 程序內也會結束
拿搶票舉例,資料庫中車票還剩一張,有乙個購買功能,先用檔案操獲取資料庫中的資料,在進行減一運算再儲存,如果是併發狀態下執行該功能,可以有多個程序同時對資料修改成功,也就有多個人同時購買同一張票,並且購買成功了,造成資料錯亂等安全性的問題。
問題:併發情況下操作同乙份資料,極其容易造成資料錯亂
解決措施:將併發變成序列,雖然降低了效率但是提公升了資料的安全性
執行緒與程序相關1 執行緒與多執行緒
1.2.1 概念理解 1.2.2 執行緒的狀態1.3.1 標準庫threading python中的執行緒開發使用標準庫threading,程序靠執行緒執行 至少有乙個主線程,其他執行緒是工作執行緒,主線程是第乙個啟動的執行緒,即從上到下 執行的那個執行緒,工作執行緒是在主線程執行的基礎上進行分支並...
程序的相關操作
shellexecute 進行程序的建立,屬於 shell api int iret int shellexecute m hwnd,t open t notepad.exe t c 123.txt null,sw show int iret int shellexecute m hwnd,t op...
程序相關操作
python中的多執行緒無法利用多核優勢,如果想要充分地使用多核cpu的資源 os.cpu count 檢視 在python中大部分情況需要使用多程序。python提供了multiprocessing。multiprocessing模組用來開啟子程序,並在子程序中執行我們定製的任務 比如函式 該模組...