【Python】多线程2
threading模块
import time
import random
import threading
class Inclass:
def __init__(self):
print 'Inclass 初始化'
def execIn(self,i):
rand = int(random.random() * 10)
print i,'---%s--开始执行,暂停%d秒' % (time.ctime(),rand)
time.sleep(rand) class Outclass:
def __init__(self):
print 'OutClass初始化'
def execOut(self):
InC = Inclass()
length = 1000
nloops = range(length)
threads = []
for i in range(length):
t = threading.Thread(target = InC.execIn, args = (i,))
threads.append(t)
for i in nloops:
threads[i].start()
for i in nloops:
threads[i].join() OC = Outclass()
OC.execOut()
版本2:
import time
import random
import threading
class Inclass:
def __init__(self):
print 'Inclass 初始化'
def execIn(self,i):
rand = int(random.random() * 10)
print i,'---%s--开始执行,暂停%d秒' % (time.ctime(),rand)
time.sleep(rand)
return i class MyThread(threading.Thread):
def __init__(self,func,args,name = ''):
threading.Thread.__init__(self)
self.name = name
self.func = func
self.args = args
def getResult(self):
return self.res
def run(self):
self.res = self.func(*self.args) class Outclass:
def __init__(self):
print 'OutClass初始化'
def execOut(self):
InC = Inclass()
length = 1000
threadlen = 10
k = 0
i = 0
while i < length:
nloops = range(threadlen)
threads = []
for j in range(threadlen):
t = MyThread( InC.execIn, (i,))
i += 1
threads.append(t)
for i in nloops:
threads[i].start()
for i in nloops:
threads[i].join() for i in nloops:
print '-----result:',threads[i].getResult() print k,'---%s--开始执行多线程第%d个小循环' % (time.ctime(),k)
k += 1 OC = Outclass()
OC.execOut()
【Python】多线程2的更多相关文章
- python多线程学习记录
		1.多线程的创建 import threading t = t.theading.Thread(target, args--) t.SetDeamon(True)//设置为守护进程 t.start() ... 
- python多线程编程
		Python多线程编程中常用方法: 1.join()方法:如果一个线程或者在函数执行的过程中调用另一个线程,并且希望待其完成操作后才能执行,那么在调用线程的时就可以使用被调线程的join方法join( ... 
- Python 多线程教程:并发与并行
		转载于: https://my.oschina.net/leejun2005/blog/398826 在批评Python的讨论中,常常说起Python多线程是多么的难用.还有人对 global int ... 
- python多线程
		python多线程有两种用法,一种是在函数中使用,一种是放在类中使用 1.在函数中使用 定义空的线程列表 threads=[] 创建线程 t=threading.Thread(target=函数名,a ... 
- python 多线程就这么简单(转)
		多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用简单的例子,让你对多线程有个初步的认识. 单线程 在好些年前的 ... 
- python 多线程就这么简单(续)
		之前讲了多线程的一篇博客,感觉讲的意犹未尽,其实,多线程非常有意思.因为我们在使用电脑的过程中无时无刻都在多进程和多线程.我们可以接着之前的例子继续讲.请先看我的上一篇博客. python 多线程就这 ... 
- python多线程监控指定目录
		import win32file import tempfile import threading import win32con import os dirs=["C:\\WINDOWS\ ... 
- python多线程ssh爆破
		python多线程ssh爆破 Python 0x01.About 爆弱口令时候写的一个python小脚本,主要功能是实现使用字典多线程爆破ssh,支持ip表导入,字典数据导入. 主要使用到的是pyth ... 
- 【python,threading】python多线程
		使用多线程的方式 1. 函数式:使用threading模块threading.Thread(e.g target name parameters) import time,threading def ... 
- <转>Python 多线程的单cpu与cpu上的多线程的区别
		你对Python 多线程有所了解的话.那么你对python 多线程在单cpu意义上的多线程与多cpu上的多线程有着本质的区别,如果你对Python 多线程的相关知识想有更多的了解,你就可以浏览我们的文 ... 
随机推荐
- C# 使用Nlog记录日志到数据库
			[摘要]Nlog是一个很不错的.NET日志记录组件,它可以将日志输出到控件台,保存到文本,也可以很方便的记录到数据库中.本文为你介绍C# 使用Nlog记录日志到数据库. Nlog是一个很不错的.NET ... 
- pause和resume
			CCSet *m_pPausedTargets;类的成员变量 void CCNode::schedule(SEL_SCHEDULE selector, float interval, unsigned ... 
- Python asyncio文档阅读摘要
			文档地址:https://docs.python.org/3/library/asyncio.html 文档第一句话说得很明白,asyncio是单线程并发,这种event loop架构是很多新型异步并 ... 
- JS页面跳转并及时刷新
			"<script type='text/javascript'>alert('操作成功!');window.history.go(-2);window.close();</ ... 
- NSIS安装程序制作工具判断系统是否安装.NET
			前段时间忙了很久的系统总算上线了,由于是WinForm程序不能整个文件夹的发给客户使用.所以必须要打包,记得以前在VS2005中是自带部署功能的.现在换了VS2013那个部署功能完全弄不清方向.最后在 ... 
- NOR FLASH驱动程序
			NOR NAND接口: RAM-Like,引脚多 引脚少,复用容量: 小 1M 2M 3M ... 
- c++多态之——vptr指针
			之前做过一个测试,在一个类中定义一个virtual修饰的函数时,sizeof这个类,发现类的大小多了恰好一个指针的字节大小,当初不明白,只是记住有这么一个特性.后来,发现它就是c++编译器给我们添加的 ... 
- 教程-TObjectList.Clear、TStringList.Clear方法对象有没有被释放
			相关资料: http://www.cnblogs.com/rogge7/p/4631796.html delphiTStringList通过AddObject方法添加对象. object里存的只是指向 ... 
- 基于jquery带时间轴的图片轮播切换代码
			基于jquery图片标题随小圆点放大切换.这是是一款带时间轴的图片轮播切换代码.效果图如下: 在线预览 源码下载 实现的代码. html代码: <div id="decoroll2 ... 
- 74HC123D 引脚介绍及应用
			Pin description Symbol Pin Description 1A 1 negative-edge triggered inpu ... 
