Python开启线程,在函数中开线程的实例


Posted in Python onFebruary 22, 2019

逻辑处理上分成了多个模块,为了提高效率,前一个模块处理完调用后一个模块操作时使用多线程

我这里遇到的情形是前面取数据后面存到mysql,发现单线程效率很低,改为取数据后开线程存到mysql

开启线程之后性能提升一倍,同时用信号量做线程同步,控制数据库同时连接数

这里只是简单的一个demo,主要是开线程的处理方式,在自己类里面的函数中开启线程,并用自己类的成员函数做线程运行函数。

#coding=utf-8
import threading

class Test:
  __init = 1

  def __init__(self):
    self.__sem = threading.Semaphore(value=5)#初始化信号量,最大并发数
    return

  def handle(self, data):
    #开启线程,传入参数
    _thread = threading.Thread(target=self.__run, args=(data,))
    _thread.setDaemon(True)
    _thread.start()#启动线程
    return

  def __run(self, data):
    self.__sem.acquire()#信号量减1
    self.__init +=data
    print(self.__init)
    self.__sem.release()#信号量加1
    return

if __name__=="__main__":
  test = Test()
  test.handle(1)
  print("end")

以上这篇Python开启线程,在函数中开线程的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python时间整形转标准格式的示例分享
Feb 14 Python
使用wxpython实现的一个简单图片浏览器实例
Jul 10 Python
详解Python的Lambda函数与排序
Oct 25 Python
python绘制双柱形图代码实例
Dec 14 Python
Python中常见的异常总结
Feb 20 Python
基于python批量处理dat文件及科学计算方法详解
May 08 Python
Django csrf 验证问题的实现
Oct 09 Python
一篇文章搞定Python操作文件与目录
Aug 13 Python
Python3安装pip工具的详细步骤
Oct 14 Python
python 有效的括号的实现代码示例
Nov 11 Python
Python3 selenium 实现QQ群接龙自动化功能
Apr 17 Python
python利用蒙版抠图(使用PIL.Image和cv2)输出透明背景图
Aug 04 Python
python 多线程串行和并行的实例
Feb 22 #Python
Python OOP类中的几种函数或方法总结
Feb 22 #Python
VSCode Python开发环境配置的详细步骤
Feb 22 #Python
python中logging模块的一些简单用法的使用
Feb 22 #Python
Python 限制线程的最大数量的方法(Semaphore)
Feb 22 #Python
Python3.6.x中内置函数总结及讲解
Feb 22 #Python
python自定义线程池控制线程数量的示例
Feb 22 #Python
You might like
世界收音机发展史
2021/03/01 无线电
php5 mysql分页实例代码
2008/04/10 PHP
php实现比较两个文件夹异同的方法
2015/06/18 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
PHP实现的猴王算法(猴子选大王)示例
2018/04/30 PHP
Ext javascript建立超链接,进行事件处理的实现方法
2009/03/22 Javascript
跟着JQuery API学Jquery 之二 属性
2010/04/09 Javascript
jquery内置验证(validate)使用方法示例(表单验证)
2013/12/04 Javascript
js调试工具console.log()方法查看js代码的执行情况
2014/08/08 Javascript
jQuery如何获取同一个类标签的所有值(默认无法获取)
2014/09/25 Javascript
jQuery实现行文字链接提示效果的方法
2015/03/10 Javascript
深入浅析JavaScript中的constructor
2016/04/19 Javascript
实现React单页应用的方法详解
2016/08/02 Javascript
jquery操作ID带有变量的节点实例
2016/12/07 Javascript
你不知道的 javascript【推荐】
2017/01/08 Javascript
详解webpack+es6+angular1.x项目构建
2017/05/02 Javascript
深入理解node.js之path模块
2017/05/03 Javascript
js实现中文实时时钟
2020/01/15 Javascript
[27:53]2014 DOTA2华西杯精英邀请赛 5 24 NewBee VS iG
2014/05/26 DOTA
python操作MongoDB基础知识
2013/11/01 Python
python文件读写并使用mysql批量插入示例分享(python操作mysql)
2014/02/17 Python
详谈python3 numpy-loadtxt的编码问题
2018/04/29 Python
Python统计时间内的并发数代码实例
2019/12/28 Python
使用TensorFlow对图像进行随机旋转的实现示例
2020/01/20 Python
使用Python实现牛顿法求极值
2020/02/10 Python
Python openpyxl 插入折线图实例
2020/04/17 Python
Python常用类型转换实现代码实例
2020/07/28 Python
AVI-8手表美国官方商店:AVI-8 USA
2019/04/10 全球购物
Ruby如何创建一个线程
2013/03/10 面试题
2014学校庆三八妇女节活动总结
2014/03/01 职场文书
大学应届生的自我评价
2014/03/06 职场文书
乡镇创先争优活动总结
2014/08/28 职场文书
课外访万家心得体会
2014/09/03 职场文书
2015毕业生实习期工作总结
2015/04/09 职场文书
2016年12月份红领巾广播稿
2015/12/21 职场文书
MySQL数字类型自增的坑
2021/05/07 MySQL