1. 程式人生 > >python 多進程的兩種創建方式

python 多進程的兩種創建方式

sel 教程 -s 啟動進程 class rate %s sta range

Python中使用線程有兩種方式:函數或者用類來包裝線程對象。

第一種---------函數

菜鳥教程的我沒看懂,說說我自己懂的----看視頻理解的

import time
import threading


def coding():
    for x in range(3):
        print(正在寫代碼:%s % threading.current_thread())  # 獲取進程名字
        time.sleep(1)


def drawing():
    for x in range(3):
        print
(正在畫圖:%s % threading.current_thread()) time.sleep(1) def main(): t1 = threading.Thread(target=coding) # 創建子線程 指定進程要運行的函數 t2 = threading.Thread(target=drawing) # 傳遞函數名 不需要帶() 帶()的是傳遞函數返回值 t1.start() # 啟動進程 t2.start() print(threading.enumerate()) #輸出當前的進程數
if __name__ == __main__: main()

第二種----類

簡單點說,就是創建一個類,然後把需要作為進程運行的內容放在run 函數中就行了,之後通過創建對象的方式創建進程

import threading
import time


class CodingThread(threading.Thread):
    def run(self):
        for x in range(3):
            print(正在寫代碼:%s % threading.current_thread())  # 獲取進程名字
time.sleep(1) class DrawingThread(threading.Thread): def run(self): for x in range(3): print(正在畫圖:%s % threading.current_thread()) time.sleep(1) def main(): t1 = CodingThread() # 通過創建對象的方式創建進程 t2 = DrawingThread() t1.start() t2.start() if __name__ == __main__: main()

python 多進程的兩種創建方式