python线程快速了解

import threading
import time

def func1():
    print('--非守护线程开始--')
    time.sleep(2)
    print('--非守护线程结束--')


def func2():
    print('--守护线程开始--')
    time.sleep(4)
    print('--守护线程结束--')


if __name__ == '__main__':

    # 创建线程 args里入参 参数需要,逗号哦
    t1 = threading.Thread(target=func1,args=())

    t2 = threading.Thread(target=func2,args=())

    # 设置守护线程 不管t2啦---
    # t2.setDaemon(True)
    # 线程gogogo
    t1.start()
    t2.start()
    # 线程阻塞 等结束不然不打印
    t1.join()
    t2.join()
    print('结束啦')

线程池

from multiprocessing import Manager,Pool
def func(li, c):
    print(li,c)
    li.append(c)

if __name__=="__main__":
    # Manager让线程共用一个变量 如果不用Manager每个线程独立创建一个d = []
    # d = Manager().list()
    d = []
    groups = [(d, 1), (d, 2), (d, 3)]
    # 设置线程池
    pool = Pool(3)
    # 开始线程
    pool.starmap(func,groups)
    # 释放线程池
    pool.close()
    # 设置线程阻塞
    pool.join()
    # 可以尝试解开Manger注释
    print(d)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值