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 相关文章推荐
ptyhon实现sitemap生成示例
Mar 30 Python
pip 错误unused-command-line-argument-hard-error-in-future解决办法
Jun 01 Python
Python使用MYSQLDB实现从数据库中导出XML文件的方法
May 11 Python
独特的python循环语句
Nov 20 Python
pycharm中连接mysql数据库的步骤详解
May 02 Python
《Python学习手册》学习总结
Jan 17 Python
python3+dlib实现人脸识别和情绪分析
Apr 21 Python
Python3.5运算符操作实例详解
Apr 25 Python
django ManyToManyField多对多关系的实例详解
Aug 09 Python
Windows下Pycharm远程连接虚拟机中Centos下的Python环境(图文教程详解)
Mar 19 Python
python 在sql语句中使用%s,%d,%f说明
Jun 06 Python
Python中的面向接口编程示例详解
Jan 17 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
谈谈PHP语法(5)
2006/10/09 PHP
利用static实现表格的颜色隔行显示的代码
2007/09/02 PHP
php.ini修改php上传文件大小限制的方法详解
2013/06/17 PHP
PHP连接MSSQL2008/2005数据库(SQLSRV)配置实例
2014/10/22 PHP
浅谈mysql_query()函数的返回值问题
2016/09/05 PHP
PHP通过CURL实现定时任务的图片抓取功能示例
2016/10/03 PHP
php根据地址获取百度地图经纬度的实例方法
2019/09/03 PHP
JavaScript中变量提升 Hoisting
2012/07/03 Javascript
js匿名函数的调用示例(形式多种多样)
2014/08/20 Javascript
基于NodeJS的前后端分离的思考与实践(二)模版探索
2014/09/26 NodeJs
20条学习javascript的编程规范的建议
2014/11/28 Javascript
nodejs事件的监听与触发的理解分析
2015/02/12 NodeJs
JavaScript修改作用域外变量的方法
2016/03/25 Javascript
jQuery EasyUI datagrid在翻页以后仍能记录被选中行的实现代码
2016/08/15 Javascript
原生js实现倒计时功能(多种格式调用)
2017/01/12 Javascript
jQuery 中msgTips 顶部弹窗效果实现代码
2017/08/14 jQuery
使用vue-cli(vue脚手架)快速搭建项目的方法
2018/05/21 Javascript
Vue props用法详解(小结)
2018/07/03 Javascript
Vue 监听列表item渲染事件方法
2018/09/06 Javascript
vue如何安装使用Quill富文本编辑器
2018/09/21 Javascript
解决JavaScript中0.1+0.2不等于0.3问题
2018/10/23 Javascript
使用vuex存储用户信息到localStorage的实例
2019/11/11 Javascript
JavaScript如何操作css
2020/10/24 Javascript
[01:18]PWL开团时刻DAY4——圣剑与抢盾
2020/11/03 DOTA
Python实现定时精度可调节的定时器
2018/04/15 Python
django使用LDAP验证的方法示例
2018/12/10 Python
浅谈Pandas Series 和 Numpy array中的相同点
2019/06/28 Python
django如何实现视图重定向
2019/07/24 Python
使用python批量转换文件编码为UTF-8的实现
2020/04/03 Python
解决python使用list()时总是报错的问题
2020/05/05 Python
Python  word实现读取及导出代码解析
2020/07/09 Python
英国HYPE双肩包官网:英国本土时尚潮牌
2018/09/26 全球购物
《小松树和大松树》教学反思
2014/02/20 职场文书
8和9的加减法教学反思
2014/05/01 职场文书
婚内房产协议书范本
2014/10/02 职场文书
教师个人查摆剖析材料
2014/10/14 职场文书