import time
import random
import threading
import inspect def get_current_function_name():
return inspect.stack()[1][3] class Inclass:
def __init__(self):
print 'Inclass 初始化'
def execIn(self,i):
rand = int(random.random() * 10)
print i,'【%s.%s】---%s--开始执行,暂停%d秒' % (self.__class__.__name__, get_current_function_name(),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.%s】--%s--开始执行多线程第%d个小循环' % (self.__class__.__name__, get_current_function_name(),time.ctime(),k)
k += 1 OC = Outclass()
OC.execOut()

【Python】动态获取python类名、函数名&多线程的更多相关文章

  1. [Python] 动态函数调用(通过函数名)

    2018-04-09 update 利用python中的内置函数 eval() ,函数说明: def eval(*args, **kwargs): # real signature unknown & ...

  2. python 动态生成变量名以及动态获取变量的变量名

    前言需求: 必须现在需要动态创建16个list,每个list的名字不一样,但是是有规律可循,比如第一个list的名字叫: arriage_list_0=[],第二个叫arriage_list_1=[] ...

  3. 类名+函数名(参数1,参数2.....){.......return this;}

    下述的函数是这样定义的: 类名+函数名(参数1,参数2.....){.......return this;} int +函数名(参数1,参数2.....){.......return int;} sh ...

  4. python 动态获取当前运行的类名和函数名的方法

    一.使用内置方法和修饰器方法获取类名.函数名 python中获取函数名的情况分为内部.外部,从外部的情况好获取,使用指向函数的对象,然后用__name__属性 复制代码代码如下: def a():pa ...

  5. python 获取当前运行的类名函数名

    import inspect def get_current_function_name(): return inspect.stack()[1][3] class MyClass: def func ...

  6. python 获取当前调用函数名等log信息

    import sys funcName = sys._getframe().f_back.f_code.co_name #获取调用函数名 lineNumber = sys._getframe().f_ ...

  7. python动态获取对象的属性和方法 (转载)

    首先通过一个例子来看一下本文中可能用到的对象和相关概念. #coding:utf-8 import sys def foo():pass class Cat(object): def __init__ ...

  8. python动态获取对象的属性和方法 (转)

    转自未知,纯个人笔记使用 首先通过一个例子来看一下本文中可能用到的对象和相关概念. #coding:utf-8 import sys def foo():pass class Cat(object): ...

  9. python动态获取对象的属性和方法

    http://blog.csdn.net/kenkywu/article/details/6822220首先通过一个例子来看一下本文中可能用到的对象和相关概念.01     #coding: UTF- ...

  10. 【Python】—— 获取当前运行函数名称和类方法名称

    原文出处: python笔记19-获取当前运行函数名称和类方法名称 获取函数名称 1.在函数外部获取函数名称,用.__name__获取 2.函数内部获取当前函数名称,用sys._getframe(). ...

随机推荐

  1. [na]win PPTP场景与搭建

    这也是在不成熟时期的一种对windows远程访问的好奇. 现在看来没啥用了. 现在一般都用linux的openvpn+gg方案了 远程访问方案: ,端口映射 ,vpn 实现这种远程访问的协议:pptp ...

  2. C# 使用Nlog记录日志到数据库

    [摘要]Nlog是一个很不错的.NET日志记录组件,它可以将日志输出到控件台,保存到文本,也可以很方便的记录到数据库中.本文为你介绍C# 使用Nlog记录日志到数据库. Nlog是一个很不错的.NET ...

  3. Oracle多行数据的合并

    数据库行合并 month  callnum 1   12221 2   3232323 3   12224 1   12224 1   12223 2   22233 2   122213    55 ...

  4. 常用的一个cookie 对象,还有path 兼容性问题

      //cookievar ck = { getObj:function() { var ck = document.cookie; var obj = {}; if(ck!="" ...

  5. How-to: Tune Your Apache Spark Jobs (Part 1)

    Learn techniques for tuning your Apache Spark jobs for optimal efficiency. When you write Apache Spa ...

  6. 判断IP是否为爬虫IP

    方法一: 通过国外网站验证:http://bot.myip.ms/123.125.71.12 返回结果: IP/Domain - 123.125.71.12:   Baidu Bot on this ...

  7. Win7网络修复,winsock/tcpip

    1.win7自带网络诊断提示没有安装一个或多个协议,ip地址为169.254.x.x,dns地址为空 2.修复winsock时,提示系统找不到指定的文件. 解决办法: 1. netsh int ip ...

  8. LeetCode: Generate Parentheses 解题报告

    Generate ParenthesesGiven n pairs of parentheses, write a function to generate all combinations of w ...

  9. Java Callable并发编程模板

    submit方法会产生Future对象,它用Callable返回结果的特定类型进行了参数化,可以用isDone()的方法来查询Future是否已经完成.当任务完成是,它具有一个结果,可以调用get() ...

  10. windows 批处理-重命名

    从数字1递增批量重命名ren.bat: @echo off SETLOCAL ENABLEDELAYEDEXPANSION set /A num= FOR /F "tokens=*" ...