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

我这里遇到的情形是前面取数据后面存到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开启线程,在函数中开线程的实例相关推荐

  1. python 在主线程开线程_Python开启线程,在函数中开线程的实例

    逻辑处理上分成了多个模块,为了提高效率,前一个模块处理完调用后一个模块操作时使用多线程 我这里遇到的情形是前面取数据后面存到mysql,发现单线程效率很低,改为取数据后开线程存到mysql 开启线程之 ...

  2. 线程组名称_Netty在Dubbo中的线程名称

    在项目中,我们会使用RocketMQ和Dubbo.前者用于发送或消费消息,后者用于两个模块之间的接口调用. RocketMQ和Dubbo在它们的底层都使用Netty作为网络通信的框架.那么今天我们就来 ...

  3. java 线程中创建线程_如何在Java 8中创建线程安全的ConcurrentHashSet?

    java 线程中创建线程 在JDK 8之前,还没有办法在Java中创建大型的线程安全的ConcurrentHashSet. java.util.concurrent包甚至没有一个名为Concurren ...

  4. java 线程 交给spring_浅谈Java中spring 线程异步执行

    多线程并发处理起来通常比较麻烦,如果你使用spring容器来管理业务bean,事情就好办了多了.spring封装了Java的多线程的实现,你只需要关注于并发事物的流程以及一些并发负载量等特性,具体来说 ...

  5. java构造函数中启动线程_java-为什么不在构造函数中启动线程? 如何终止?

    java-为什么不在构造函数中启动线程? 如何终止? 我正在学习如何在Java中使用线程. 我写了一个实现Runnable的类,以同时运行到另一个线程. 主线程处理侦听串行端口,而第二个线程将处理向同 ...

  6. java线程和进程的区别_Java中的线程和进程比较

    1.进程和线程的区别 通俗一点说,进程就是程序的一次执行,而线程可以理解为进程中的执行的一段程序片段. 用一点文词说就是,每个进程都有独立的代码和数据空间(进程上下文);而线程可以看成是轻量级的进程. ...

  7. python全局变量赋值报错_python全局变量、回调函数

    1.python全局变量相关概念及使用 来自菜鸟教程上的例子: http://www.runoob.com/python3/python3-function.html 一.python入参需要注意地方 ...

  8. python找出在原图中的位置_Python 通过截图匹配原图中的位置(opencv)实例

    安装依赖 1)下载安装opencv-2.4.9,并将cv2.pyd拷贝到python安装目录的site-package下 2)pip install numpy 3)pip install aircv ...

  9. python加上子类的特性_Python里的元编程:控制产生的实例对象的特性以及实例

    很多人不理解"元编程"是个什么东西,关于它也没有一个十分准确的定义.这篇文章要说的是Python里的元编程,实际上也不一定就真的符合"元编程"的定义.只不过我无 ...

最新文章

  1. 最新综述 | 基于深度学习的立体视觉深度估计
  2. PostgreSQL9.5和JSONB的强大功能
  3. Stanford CoreNLP使用需要注意的一点
  4. java.net.URISyntaxException: Illegal character in query
  5. 用Java和Python模仿Kotlin构建器
  6. Android 即时通讯开发
  7. yum方式安装android_在CentOS 7和Ubuntu14.04上安装Android Studio
  8. 《Effective Debugging:软件和系统调试的66个有效方法》一第2条:在网上确切地查询你所遇到的问题,以寻求解决问题的灵感...
  9. 网页f12查看服务器,网页中审查元素(按F12)与查看网页源代码的区别
  10. 智能家居规模发展尚需时日
  11. idea springboot启动报SLF4J:Failed to load class “org.slf4j.impl.StaticLoggerBinder”
  12. win7域用户生成临时文件夹
  13. 不用登录就可以复制 CSDN 代码
  14. Project2019入门到精通
  15. 初谈黑客破解密码的原理
  16. 前端企业级代码规范(巨详细)
  17. K-means算法的Java实现 聚类分析681个三国武将(1)
  18. Chrome浏览器中使用 iframe 嵌入网页导致视频不能全屏的问题解决方法
  19. java堆内存设置_java堆内存设置原理
  20. R语言高比例送转策略

热门文章

  1. Javascript String类的属性及方法
  2. Oracle PL/SQL编程之过程
  3. http://www.ybtsoft.com/
  4. uinty中对Xml文件的操作
  5. 混合APP开发框架资料汇总
  6. 普通人的经验和技能交易平台
  7. 网络管理员常见九大问题快速解决方法
  8. nyoj 1272 表达式求值(中缀式转后缀式)
  9. java 目录的遍历与删除
  10. NYOJ 625 笨蛋的难题(二)