多线程加锁并发任务

# coding=utf-8
import threading
import time
import string
import random


class TestTreading(threading.Thread):
    def __init__(self,func):
        threading.Thread.__init__(self)
        self.func =func
    #@override
    def run(self):
        mutex = threading.Lock()
        mutexFlage = mutex.acquire()
        if mutexFlage:
            self.res=self.func()
            print(time.asctime())
        mutex.release()
        return self.res
    # def get_res(self):
    #     return  self.res
def add():
    return ''.join(random.sample(string.hexdigits,random.randint(16,18)))

def executors():
    resList=[]
    pool=[]
    for i in range(10000):
        th=TestTreading(add)
        pool.append(th)

    for t in pool:
        t.start()
    for t in pool:
        t.join()
        resList.append(t.run())
    return resList
if __name__ == '__main__':
    executors()

  

转载于:https://www.cnblogs.com/SunshineKimi/p/10631541.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值