zoukankan      html  css  js  c++  java
  • Python基础学习:Python多线程方法threading的使用一

    Python基础学习:Python多线程方法threading的使用一

    一、方法封装

    import threading
    class MultithreadingAction(object):
        '''
        这里对ththreading.Thread()是二次封装
        '''
        def __init__(self, actions):
            '''
            :param actions: 需要传入的参数为需要执行的操作actions,actions为一个集合
            '''
            self.__actions = actions
    
        def multithreading_action(self):
            '''
            多线程的方法
            '''
            try:
                i = 0
                act = {}
                for action in self.__actions:
                    act[i] = threading.Thread(target=action)
                    act[i].start()
                    i += 1
                for j in act.keys():
                    act[j].join()
            except Exception as e:
                print(e)
    

    二、方法调用

    from public_methods.common.multi_threading import MultithreadingAction
    import time
    def test1():
        '''
        打印test1,每次打印等待1s
        :return:
        '''
        i = 0
        while i < 6:
            print('test1')
            i += 1
            time.sleep(1)
    
    
    def test2():
        '''
        打印test2
        :return:
        '''
        j = 0
        while j < 6:
            print('test2')
            j += 1
            time.sleep(1)
    
    
    # 调用多线程方法
    actions = [test1, test2]    # 将两个操作放到list里
    MultithreadingAction(actions).multithreading_action()   # 启用多线程
    

    三、运行结果

    test1
    test2
    test1
    test2
    test1
    test2
    test1
    test2
    test1
    test2
    test1
    test2
    
    Process finished with exit code 0
    
  • 相关阅读:
    UIPickerView-一.01-
    闭包-01-Swift
    Swift 入门-01-概述
    git使用命令行-01-自己操作的
    FetchedResultsController-03-CoreData相关
    SQLite-05-增删改查
    Sqlite函数总结-04
    List<string>转xml
    比较两个List<T>是否相同
    获取DataTable前几条数据
  • 原文地址:https://www.cnblogs.com/caodingzheng/p/14007066.html
Copyright © 2011-2022 走看看