1.程序
#多執行緒實現不了真正的多執行緒
#多程序 第一種方法
from multiprocessing import process
deff
(name):
time.sleep(1)
print('yanga11ang',name)
if __name__ == '__main__'
ps=for i in range(3):
p=process(target=f,args=('iadf',))
p.start()
for p in ps:
p.join()
#多程序 第二種方法
from multiprocessing import process
class
myprocess
(process):
defrun
(self):
time.sleep(1)
print('yanga11ang',self.name) #預設是他的乙個程序編號
if __name__ == '__main__'
ps=for i in range(3):
p=myprocess()
p.start()
for p in ps:
p.join()
#程序關係
from multiprocessing import process
import os,time
definfo
(title):
print(title)
print('module name',__name__)
print('parent process:',os.getppid()) #列印父程序編號
print('process id:',os.getpid()) #程序編號
if __name__ == '__main__'
info('\033[32;1mmain process line\033[0m')
time.sleep(3)
p=process(target=info,args=('bob',))
p.start()
p.join()
#一些方法
#name 程序名字
#is_alive() 返回程序是否在執行
#join(timeout) :阻塞當前上下文,知道呼叫此方法的程序終止或到達指定的timeout(可選引數)
#start() 程序準備就緒,等待cpu呼叫
#run() start呼叫run方法 如果例項程序沒有傳入定製的target
#terminate() 不管任務是否完成立即停止工作程序
2.程序的通訊
#使用程序佇列queue
from multiprocessing import process,queue
deff
(q):
q.put([1,2,'yanga1ang'])
print('subprocess id:',id(q)) #多個queue位址不同
if __name__=='__main__':
q=queue()
print(id(q))
ps=for i in range(3):
p=process(target=f,args=(q,))
p.start()
print(q.get())
print(q.get())
print(q.get())
#queue 之間有莫名的一種聯絡,queue在某個程序裡面改變,其他程序裡面也會改變
#queue 是multiprocess裡面自己寫的佇列而不是普通的
#使用程序管道 pipe
from multiprocessing import process,pipe
deff
(conn):
conn.send([43,none,'yang11ang'])
conn.close()
if __name__=='__main__':
q=queue()
parent_conn,child_conn=pipe()
p=process(target=f,args=(child_conn,))
p.start()
print(parent_conn.recv())
p.join()
3 .資料共享 程序的manager
#可以共用市局
from multiprocessing import process manager
deff
(d,l,n):
d[n]='1'
d['2']=2
print(1)
if __name__=='__main__':
with manager() as manager: # manage=manager()
d=manager.dict() #建立的可以共享的字典
l=manager.list(rang[5])
ps=for i in range(10):
p=process(target=f,args=(d,l,i))
p.start()
for i in range(10):
p.join()
39 網路程式設計
http協議,hyper text transfer protocol 超文字傳輸協議 是用於從全球資訊網伺服器傳送超文字到本地瀏覽器的傳輸議,http是乙個應用層協議,由請求和響應構成,是乙個標準的客戶端伺服器模型。c s模式 client和server常常分別處在相距很遠的兩台計算機上,clie...
網路程式設計之 程序
首先博主在這裡先告訴大家博主學習的書籍是由 韓 韓聖雨 著 金國哲 譯 的 tcp ip網路程式設計,把網路變成寫的通俗易懂。那麼我們就開始吧!我們就能利用時鐘中斷讓各個程式來占用cpu的一部分從而完成併發 由於人的視覺間隔較大,所以在我們看來這就是一起執行的,但是在計算機內部不是這樣的,計算及內部...
每日程式設計(39)
題目描述 給定乙個矩陣 a,返回 a 的轉置矩陣。矩陣的轉置是指將矩陣的主對角線翻轉,交換矩陣的行索引與列索引。示例 1 輸入 1,2,3 4,5,6 7,8,9 輸出 1,4,7 2,5,8 3,6,9 示例 2 輸入 1,2,3 4,5,6 輸出 1,4 2,5 3,6 分析 這個題很明顯直接反...