1. 程式人生 > >python多線程的兩種寫法

python多線程的兩種寫法

rgs 線程 int 多線程 war %s sel 獲取 target

1.一般多線程

import threading


def func(arg):
    # 獲取當前執行該函數的線程的對象
    t = threading.current_thread()
    # 根據當前線程對象獲取當前線程名稱
    name = t.getName()
    print(name, arg)


for i in range(5):
    t1 = threading.Thread(target=func, args=(i,))
    t1.setName('線程:%s-->' % i)
    t1.start()
    
print('end')

2.面向對象版多線程

class MyThread(threading.Thread):

    def run(self):
        # 獲取當前執行該函數的線程的對象
        t = threading.current_thread()
        # 根據當前線程對象獲取當前線程名稱
        name = t.getName()
        print(name, self._args, self._kwargs)


for i in range(5):
    t = MyThread(args=(i,))
    t.start()

print('end')

python多線程的兩種寫法