網路程式設計 程序 1 什麼叫程序?

2022-03-10 13:52:39 字數 1888 閱讀 5524

知識點:(1)什麼叫程序? 舉個例子:電腦上qq,是乙個exe二進位制檔案,存在磁碟裡的,這叫程式,當我們雙擊開啟qq時,作業系統呼叫**以及系統分配的資源(資源包括攝像頭,記憶體,顯示卡,音效卡等等),這時程序就產生了,簡單說程序啟動的程式就是執行**+資源,沒有啟動的時候就是乙個二進位制檔案,不呼叫任何系統資源.

(2)特別要注意,不要與執行緒搞混淆,看下圖:

1、在程式中實現多程序:

"""

匯入程序模組

"""import

multiprocessing

import

time

deftest1():

for i in range(5):

print('

test1')

time.sleep(1)

deftest2():

for i in range(5):

print('

tetst2')

time.sleep(1)

"""建立多程序其實和多執行緒模式是一樣的,只是使用到的模組和類不一樣

"""def

main():

t1 = multiprocessing.process(target=test1)

t2 = multiprocessing.process(target=test2)

t1.start()

t2.start()

if__name__ == '

__main__':

main()

執行效果如下:

test1

tetst2

test1

tetst2

test1

tetst2

test1

tetst2

test1

tetst2

2、那麼上面多程序程式工作原理是怎樣的呢?看下圖就明白了:中的解釋可能字太小,我把拷貝出來:當**執行到箭頭處,即建立子程序的時候,會將1的**+資源拷貝乙份放到乙個新的記憶體中去執行這個子程序。2,3倆個子程序都有乙份和1主程序中一模一樣的**+資源,這就是通過程序實現多工原理。由此也可以看出多程序實現多工有幾個特點:1、是比較耗費系統資源的,因為每個子程序都有雨主程序相同的系統分配的資源2、程式穩定,因為每個程序都是獨立執行的,主程序結束也不影響子程序的執行,因為都有乙份一摸一樣的**

3、補充的知識點:如何在建立程序物件的時候往程序函式裡傳參呢?看下面**示例:

def test1(a,b,c,d,*args,**kwargs):

print

(a,b,c,d)

print

(args)

print

(kwargs)

deftest2():

pass

defmain():

t1 = multiprocessing.process(target=test1,args=(1,2,3,4,5,6),kwargs=)

t1.start()

if__name__ == '

__main__':

main()

執行效果:

1 2 3 4

(5, 6)

網路程式設計之 程序

首先博主在這裡先告訴大家博主學習的書籍是由 韓 韓聖雨 著 金國哲 譯 的 tcp ip網路程式設計,把網路變成寫的通俗易懂。那麼我們就開始吧!我們就能利用時鐘中斷讓各個程式來占用cpu的一部分從而完成併發 由於人的視覺間隔較大,所以在我們看來這就是一起執行的,但是在計算機內部不是這樣的,計算及內部...

3 9 學網路程式設計 程序

1.程序 多執行緒實現不了真正的多執行緒 多程序 第一種方法 from multiprocessing import process deff name time.sleep 1 print yanga11ang name if name main ps for i in range 3 p pro...

Linux 網路程式設計 守護程序

啥是守護程序?就是沒有終端的那個框框。沒有框框咋啟動?1.開機在系統啟動後,由系統初始化指令碼啟動。位於 etc的某個目錄中 2.由使用者在終端啟動。程式有無終端的一些影響?1.無訊息列印,需要syslog函式。2.其它影響可以在建立的過程中領悟到。開始寫乙個守護程序?1.fork 終止父程序,子程...