【Python~分享】测试电脑性能,最多能创建多少个线程

注:这个代码以前确实能测出能建多少个线程,但是好长时间过去了,今天我再启动,代码报错~~

而且,好长时间之后,我都看不太懂当初自己写的代码了,一些基本的Python类啥的,都忘了,所以更别提更正代码了,贴出代码,希望大家有需要的能够借鉴一下,因为代码确实存在一些错误… QAQ

import threading
import time, random, sys


class Counter:
    def __init__(self):
        self.lock = threading.Lock()
        self.value = 0

    def increment(self):
        self.lock.acquire()
        self.value = value = self.value + 1
        self.lock.release()
        return value


counter = Counter()
cond = threading.Condition()


class Worker(threading.Thread):

    def run(self):
        print(self.getName(), "-- created.")
        cond.acquire()
        # for i in range(10):
        # pretend we're doing something that takes 10?00 ms
        # value = counter.increment()
        # time.sleep(random.randint(10, 100) / 1000.0)
        cond.wait()
        # print self.getName(), "-- task", "finished"
        cond.release()


if __name__ == '__main__':
    max_num=0
    try:
        while(True):
            Worker().start()  # start a worker
            max_num+=1
    except BaseException as e:
        print("异常: ", type(e), e)
        time.sleep(5)
        print("maxium i={}",max_num)
    finally:
        cond.acquire()
        cond.notifyAll()
        cond.release()
        time.sleep(3)
        print(threading.currentThread().getName(), " quit")

你可能感兴趣的:(【Python~分享】测试电脑性能,最多能创建多少个线程)