zoukankan      html  css  js  c++  java
  • 【Python】动态获取python类名、函数名&多线程

    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()
                
  • 相关阅读:
    linux下svn自动启动
    linux下SVN从一台服务器迁移到另一台服务器
    linux下安装subvision
    Activiti 6.0 变化
    Nexus3将本地jar包添加到仓库
    2021年放假安排
    字典词典工具
    测试问题及心得(实时修改添加)
    外网主机远程连接内网主机
    自动化测试
  • 原文地址:https://www.cnblogs.com/colipso/p/4598357.html
Copyright © 2011-2022 走看看