美文网首页py
python多线程并发数量控制

python多线程并发数量控制

作者: 第三个账号 | 来源:发表于2018-07-22 01:11 被阅读398次

python多线程如果不进行并发数量控制,在启动线程数量多到一定程度后,会造成线程无法启动的错误。
控制多线程并发数量的方法有好几钟,下面介绍用queue控制多线程并发数量的方法。python3


# -*- coding: utf-8 -*-
import threading
import queue

maxThreads = 50

class store(threading.Thread):
    def __init__(self, store, queue):
        threading.Thread.__init__(self)
        self.queue = queue
        self.store = store

    def run(self):
        try:
            print('This is store %s\n' % self.store)
        except Exception as e:
            print(e)
        finally:
            self.queue.get()
            self.queue.task_done()

def main():
    q = queue.Queue(maxThreads)
    for s in range(1500):
        q.put(s)
        t = store(s, q)
        t.start()
    q.join()
    print('over')

if __name__ == '__main__':
    main()

相关文章

  • python多线程并发数量控制

    python多线程如果不进行并发数量控制,在启动线程数量多到一定程度后,会造成线程无法启动的错误。控制多线程并发数...

  • 简单易懂的DispatchSemaphore

    DispatchSemaphore 信号量,一种用来控制并发访问资源的机制,多用于多线程中,可以控制并发线程数量。...

  • iOS多线程随笔

    1. 多线程的并发控制 1.1 在CGD中快速实现多线程的并发控制 NSOperationQueue来处理并发控制...

  • dispatch_semaphore控制并发线程数

    当我们在处理多线程的时候,如果想控制并发线程的数量,我们会使用NSOperationQueue的maxConcur...

  • 多线程方法

    一. 基础并行多线程结构 二. 标准多线程方法,控制并发线程数,带线程锁

  • 第 3 章 Netty 的组件和设计

    Channel:Socket ;EventLoop:控制流、多线程处理、并发;ChannelFuture:异步通知...

  • 对于分布式并发下生成唯一ID的方法讨论redis/mysql。

    分布式并发下唯一ID的生成规则 (python 多线程模拟并发 ,QPS以秒为单位, 不考虑 python GIL...

  • python中的多线程与并发

    引子:经常听别人说起并发这个概念,在python语言中怎么理解多线程,多线程和并发是什么关系,什么时候更适合选择多...

  • GCD 文章理解

    GCD详解 1,GCD如何控制线程的最大并发数? (1,通过信号量的大小控制线成并发执行的数量) (2,一定数量的...

  • Java的线程数设置

    对于在实际开发中使用到多线程,并发等操作,如何设置合理的线程数量

网友评论

    本文标题:python多线程并发数量控制

    本文链接:https://www.haomeiwen.com/subject/ijakmftx.html