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的更多相关文章

  1. python多线程学习记录

    1.多线程的创建 import threading t = t.theading.Thread(target, args--) t.SetDeamon(True)//设置为守护进程 t.start() ...

  2. python多线程编程

    Python多线程编程中常用方法: 1.join()方法:如果一个线程或者在函数执行的过程中调用另一个线程,并且希望待其完成操作后才能执行,那么在调用线程的时就可以使用被调线程的join方法join( ...

  3. Python 多线程教程:并发与并行

    转载于: https://my.oschina.net/leejun2005/blog/398826 在批评Python的讨论中,常常说起Python多线程是多么的难用.还有人对 global int ...

  4. python多线程

    python多线程有两种用法,一种是在函数中使用,一种是放在类中使用 1.在函数中使用 定义空的线程列表 threads=[] 创建线程 t=threading.Thread(target=函数名,a ...

  5. python 多线程就这么简单(转)

    多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用简单的例子,让你对多线程有个初步的认识. 单线程 在好些年前的 ...

  6. python 多线程就这么简单(续)

    之前讲了多线程的一篇博客,感觉讲的意犹未尽,其实,多线程非常有意思.因为我们在使用电脑的过程中无时无刻都在多进程和多线程.我们可以接着之前的例子继续讲.请先看我的上一篇博客. python 多线程就这 ...

  7. python多线程监控指定目录

    import win32file import tempfile import threading import win32con import os dirs=["C:\\WINDOWS\ ...

  8. python多线程ssh爆破

    python多线程ssh爆破 Python 0x01.About 爆弱口令时候写的一个python小脚本,主要功能是实现使用字典多线程爆破ssh,支持ip表导入,字典数据导入. 主要使用到的是pyth ...

  9. 【python,threading】python多线程

    使用多线程的方式 1.  函数式:使用threading模块threading.Thread(e.g target name parameters) import time,threading def ...

  10. <转>Python 多线程的单cpu与cpu上的多线程的区别

    你对Python 多线程有所了解的话.那么你对python 多线程在单cpu意义上的多线程与多cpu上的多线程有着本质的区别,如果你对Python 多线程的相关知识想有更多的了解,你就可以浏览我们的文 ...

随机推荐

  1. SQL Server 备份数据库到指定路径,任务实现

    --Description:备份指定数据到指定路径,第一次完整备份.每月1号完整备份.每周一完整,每天增量备份--====================================ALTER p ...

  2. Lintcode记录

    汇总贴 56. Two Sum[easy] 167. Add Two Numbers[easy] 53. Reverse Words in a String[easy] 82. Single Numb ...

  3. tornado用户验证

    1.重写get_current_user()方法 class BaseHandler(tornado.web.RequestHandler): def get_current_user(self): ...

  4. Oracle PLSQL Demo - 18.01管道function[查询零散的字段组成list管道返回]

    --PACKAGE CREATE OR REPLACE PACKAGE test_141213 is TYPE type_ref IS record( ENAME ), WORK_CITY ), SA ...

  5. hbase RowFilter如何根据rowkey查询以及实例实现代码 habase模糊查询【转】

    RowFilter用于过滤row key Operator Description LESS 小于 LESS_OR_EQUAL 小于等于 [EQUAL 等于 NOT_EQUAL 不等于 GREATER ...

  6. VC++ 目录选择对话框

    打开目录选择对话框要使用到API函数SHBrowseForFolder来实现 函数原型为: LPITEMIDLIST SHBrowseForFolder(LPBROWSEINFO lpbi); 其中L ...

  7. 一个div层在页面上下左右居中以及数据的排序

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  8. python 列表的内容赋值

    l1 = '20180201 b4b8e187-d59d-33fb-addc-ef189aca3712 com.ss.android.article.news' l2 = re.split('[ ]+ ...

  9. xml大项目,增删改查

    using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; usin ...

  10. ectouch ucenter用户注册失败问题

    ectouch 注册时没有给ecshop传下面这几个值: `alias` ) NOT NULL DEFAULT '' , `msn` ) NOT NULL DEFAULT '' , `qq` ) NO ...