python编程测试电脑开启最大线程数实例代码

yipeiwu_com7年前Python基础

本文实例代码主要实现python编程测试电脑开启最大线程数,具体实现代码如下。

#!/usr/bin/env python  
#coding=gbk  
  
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__':  
    
    try:  
      for i in range(3500):  
        Worker().start() # start a worker  
    except BaseException, e:  
      print "异常: ", type(e), e  
      time.sleep(5)  
      print "maxium i=", i  
    finally:  
      cond.acquire()  
      cond.notifyAll()  
      cond.release()  
      time.sleep(3)  
      print threading.currentThread().getName(), " quit" 

运行结果部分截图:

总结

以上就是本文关于python编程测试电脑开启最大线程数实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

Python BeautifulSoup [解决方法] TypeError: list indices must be integers or slices, not str

在python的Beautiful Soup 4 扩展库的使用过程中出现了 TypeError: list indices must be integers or slices, no...

Python中利用函数装饰器实现备忘功能

“备忘”的定义 “memoization”(备忘)这个词是由Donald Michie在1968年提出的,它基于拉丁语单词“memorandum”(备忘录),意思是“被记住”。虽然它和单...

python中for循环输出列表索引与对应的值方法

python中for循环输出列表索引与对应的值方法

如下所示: list = [‘a','b','c'] 想用for循环输出list的元素以及对应的索引。 代码及结果如下: 以上这篇python中for循环输出列表索引与对应的值...

python求平均数、方差、中位数的例子

CalStatistics.py def getNum(): #获取用户不定长度的输入 nums = [] iNumStr = input("请输入数字(回车退出...

简单谈谈Python中的反转字符串问题

按单词反转字符串是一道很常见的面试题。在Python中实现起来非常简单。 def reverse_string_by_word(s): lst = s.split() # spli...