01.複習內容
子程序裡面不能用 input 明天認真看 ,天熱有點浮躁!
1#!/usr/bin/env python2#
!--*--coding:utf-8 --*--3#
!@time :2018/7/16 18:464#
!@author truenewbee56
"""7
我把之前的專案誤刪了,重新建個專案,
8還好以前部分**用sublime編寫的還有存檔
9"""10#
多程序**
1112
#from multiprocessing import process13#
方法14
#程序物件.start() 開啟乙個子程序15#
程序物件.join() 感知乙個子程序的結束16#
程序物件.terminate() 結束乙個子程序17#
程序物件.is_alive() 檢視某個子程序是否還在執行18#
屬性19
#程序物件.name 程序名20#
程序物件.pid 程序號21#
程序物件.daemob 值為true的時候,表現新的子程序是乙個守護程序22#
守護程序 隨著主程序**的執行結束而結束23#
一定在start之前設定
2425
#from multiprocessing import lock
2627
#l = lock()28#
l.acquire() #拿鑰匙29#
會造成資料不安全的操作30#
l.release() #換鑰匙
# 訊號量 pep8的標準還得適應,,真難
1#!/usr/bin/env python2#
!--*--coding:utf-8 --*--3#
!@time :2018/7/16 19:014#
!@author truenewbee56
7#多程序中的元件8#
一套資源 同一時間 只能被n個人訪問9#
某一段** 同一時間 只能被n個程序執行
10import
time
11import
random
12from multiprocessing import
process
13from multiprocessing import
semaphore
1415
16def
ktv(arg, sem1):
17 sem1.acquire() #
獲取鑰匙
18"""
模擬唱歌
"""19
print("
%s走進ktv
"%arg)
20 time.sleep(random.randint(1, 5))
21print("
%s走出ktv
"%arg)
22sem.release()
2324
25if
__name__ == '
__main__':
26 sem = semaphore(4)
27for i in range(20):
28 p = process(target=ktv, args=(i, sem))
29 p.start()
linux 程序 訊號量
1.概述 該demo主要實現linux下程序之間訊號量的使用,相關介面介紹可以參考 2.測試 程序程式設計demo 訊號量 ipc相關的命令 ipcs ipcrm 釋放ipc 檢視程序屬性 ulimit a include include include include include includ...
python 程序訊號量
1 概念 訊號量和鎖相似,鎖同一時間只允許乙個物件 程序 通過,訊號量同一時間允許多個物件 程序 通過 2 應用場景 多執行緒,並規定數量 3 格式 匯入訊號量模組 例項化訊號量物件,可以規定訊號量的個數 傳遞物件 拿到一把鑰匙 釋放一把鑰匙 4 過程 獲得鑰匙,當鑰匙串沒鑰匙時,其它程序要在外面等...
Linux程序通訊 訊號量
主要用於程序對共享資源的互斥訪問。為了取得對乙個共享資源,程序測試訊號量的值,如果為正,表示還有資源可以訪問,該程序對訊號量加減一。如果為0表示沒有資源可以用,該程序應當休眠等待訊號量的值再次為正。linux中的訊號量使用起來是比較麻煩的。在這裡,訊號量是以集合形式存在的,建立時要給出訊號量的數目,...