Python中的程序和執行緒

2022-07-06 01:30:12 字數 2057 閱讀 6092

from multiprocessing import process

process = process(target=函式,name=程序的名字,args=(給函式傳遞的引數))

process.start() 啟動程序並執行任務

process.run() 只是執行了任務但是沒有啟動程序

process.terminate() 終止程序

import threading

from multiprocessing import process

from multiprocessing.pool import pool

from multiprocessing.queues import queue

from threading import thread, lock

from time import sleep

def task1(s):

while true:

print('這是任務1')

sleep(s)

def task2(s):

while true:

print('這是任務2')

sleep(s)

if __name__ == '__main__':

p1 = process(target=task1, args=(1,))

p1.start()

p2 = process(target=task2, args=(2,))

p2.start()

# 程序,執行緒

# process類

# 建立程序

def func(n):

pass

p = process(target=func, name='', args=(), kwargs='')

p.start()

# 自定義程序

class myprocess(process):

def run(self):

pass

p = myprocess()

p.start()

# 程序資料共享:

n = 0

# 程序池:pool

p = pool(5)

# 程序間通訊

q = queue(4)

q.put() # 放資料

q.get() # 取資料

q.qsize() # 獲取佇列中的資料個數

q.empty() # 判斷佇列是否為空

q.full() # 判斷佇列是否已經滿了

# 執行緒

t = thread(target=func, name='', args=(), kwargs='')

t.start()

# gil:全域性直譯器鎖

# python中的執行緒是偽執行緒

# 執行緒同步

lock = lock()

list1 = [0] * 10

def task1():

# 獲取執行緒鎖,如果已經上鎖了,則等待鎖的釋放

lock.acquire() # 請求鎖

for i in range(len(list1)):

list1[i] = 1

sleep(0.5)

lock.release() # 釋放鎖

def task2():

lock.acquire()

for i in range(len(list1)):

print('---->', list1[i])

sleep(0.5)

lock.release()

if __name__ == '__main__':

t1 = threading.thread(target=task1)

t2 = threading.thread(target=task2)

t2.start()

t1.start()

t2.join()

t1.join()

print(list1)

python程序和執行緒 Python中的程序和執行緒

程序和執行緒 我們開啟我們的計算機就會看到程序和執行緒 那什麼是程序什麼是執行緒 我的理解是程序是指在系統中正在執行的乙個應用程式 程式一旦執行就是程序,或者更專業化來說 程序是指程式執行時的乙個例項。執行緒是程序的乙個實體。程序 資源分配的最小單位,執行緒 程式執行的最小單位。我舉個例子,比如開啟...

Python 執行緒和程序

一 什麼是執行緒 1 執行緒是作業系統能夠進行運算排程的最小單位。它被包含在程序中,是程序中的實際運作單位。一條執行緒指的是程序中乙個單一順序的控制流,乙個程序中可以併發多個執行緒,每條執行緒並行執行不同的任務。每個程序至少包含乙個執行緒.二 什麼是程序 1 乙個程序就是乙個程式的例項,每個程序裡面...

python執行緒和程序

執行緒 計算機能夠進行排程的最小單位 乙個程序可以包含多個執行緒,執行緒共享程序資源 多執行緒併發 上下文程序就像乙個工作的房間 記憶體 以及房間裡工作需要的資源 i o啊,網絡卡啊 執行緒相當於工作的人 所有的在同乙個程序中的執行緒是共享一塊記憶體空間 pid 唯一的程序識別符號 each pro...