线程池的极简用法——内置线程池multiprocessing
大家好,今天博主来分享一个线程池的小捷径——内置线程池的使用方法
一、背景
说道多线程,对变成层有了解的小伙伴一定不陌生,虽然不知道是什么但是也会从各大网站、面试分享等途径听说过。这里就不做过多的介绍了,简单来讲,多线程就是让人同时看书聊天听音乐跑步等等,一个时间点开始干不同的事情。
接下来说一说本文重点——线程池。线程池是在多线程的基础上解放创建线程销毁线程的重复过程,将需要重复调用的线程放进池字里,用到了就直接取,提高了运行效率。
那么当我们创建线程池的时候,我们需要自己定义一个类,然后在类中编写必要的函数,这样才能在主程序中进行使用。那么如果有一个现成的线程池供我们使用或继承,就能减少我们的代码量。
二、内置线程池
这里我们需要先对内置线程池进行调用
from multiprocessing.pool import ThreadPool
调用完成后,我们就可以直接对我们需要创建的任务进行编写了,这里我们那task1和task2来举例。
第一步:设定线程池里的线程数量,这里设定2个线程
pool = ThreadPool(2)
第二步:为线程池添加任务,一个线程可添加一个任务(此时开启了任务提交工具,工具自带守护线程)
pool.apply_async(task1)
pool.apply_async(task2)
第三步:关闭提交(注意:提交完任务一定要关闭提交工具,否则会报错)
pool.close()
第四步:添加阻塞
pool.join()
到这里,内置线程池的使用方法就介绍完成了啦~
感谢阅读
end...
线程池的极简用法——内置线程池multiprocessing的更多相关文章
- 为什么阿里Java规约禁止使用Java内置线程池?
IDEA导入阿里规约插件,当你这样写代码时,插件就会自动监测出来,并给你红线提醒. 告诉你手动创建线程池,效果会更好. 在探秘原因之前我们要先了解一下线程池 ThreadPoolExecutor 都有 ...
- 开源数据库连接池之Tomcat内置连接池
本篇介绍几种开源数据库连接池,同时重点讲述如何使用Tomcat服务器内置的数据库连接池. 之前的博客已经重点讲述了使用数据库连接池的好处,即是将多次创建连接转变为一次创建而使用长连接模式.这样能减少数 ...
- Java第三方数据库连接池库-DBCP-C3P0-Tomcat内置连接池
连接池原理 数据库连接池的基本思想就是为数据库连接建立一个“缓冲池”.预先在缓冲池中放入一定数量的连接,当需要建立数据库连接时,只需从“缓冲池”中取出一个,使用完毕之后再放回去.我们可以通过设定连接池 ...
- java内置线程池ThreadPoolExecutor源码学习记录
背景 公司业务性能优化,使用java自带的Executors.newFixedThreadPool()方法生成线程池.但是其内部定义的LinkedBlockingQueue容量是Integer.MAX ...
- Java 四种内置线程池
引言 我们之前使用线程的时候都是使用 new Thread 来进行线程的创建,但是这样会有一些问题 每次 new Thread 新建对象性能差 线程缺乏统一管理,可能无限制新建线程,相互之间竞争,及可 ...
- Java线程池ThreadPoolExecutor极简教程
ThreadPoolExecutor 简介 ThreadPoolExecutor 是 java.util.concurrent 包下的一个类,在jdk1.5版本引入,帮助开发人员管理线程并方便地执行并 ...
- 使用Unidac内置连接池
第一步: 放一个TUniconnection并设置相关属性 之后直接使用TUniconnection对象即可 跟踪unidac源码uni单元1540行中可以看到 Connect方法调用CreateIC ...
- Java开源连接池c3p0的基本用法
前言:其实c3p0只是一个实现了javax.sql 接口 DataSource的一个工具集,使用c3p0可以帮我们管理宝贵的Connection资源,无须我们去创建连接(免去每次配置数据库驱动,url ...
- Rust-Sqlx极简教程
简介 sqlx 是 rust 中的一个数据库访问工具.具有以下特点: 异步:原生就支持异步,在并发性高的场合能够得到更好的支持 编译时检查查询:sqlx可以在 cargo build 的时候检查执行s ...
随机推荐
- linux内存不足时,为了防止报错,可以使用swap
1. 创建分区文件, 大小 2G dd if=/dev/zero of=/swapfile bs=1k count=2048000 2. 生成 swap 文件系统 mkswap /swapfile 3 ...
- 鸟哥的Linux私房菜学习笔记——文件权限与目录配置
Linux的文件权限和目录配置 在linux中的每个用户必需属于一个组,不能独立于组外.在linux中每个文件有所有者.所在组.其它组的概念. (1)所有者 一般为文件的创建者,谁创建了该文件,就是天 ...
- log4j和lockback的比较,二者可否同时使用
一.log4j和logback的介绍 log4j: 可以控制日志信息输送的目的地是控制台.文件.GUI组件,甚至是套接口服务器.NT的事件记录器.UNIX Syslog守护进程等:可以控制每一条日志的 ...
- 加密模块hashlib+日志模块logging
目录 1.hashlib 加密模块 1.hashlib模块基本使用 1.2 详细操作 ①md5加密模式 ②sha256复杂加密模式 ③加盐操作(普通加盐) ④加盐操作(动态加盐) 2.logging ...
- 使用PHP利用phpmailer发送电子邮件
先来几句废话: phpMailer是一个非常强大的php发送邮件类,可以设定发送邮件地址.回复地址.邮件主题.html网页,上传附件,并且使用起来非常方便. phpMailer的特点: ...
- 图解python | 简介
作者:韩信子@ShowMeAI 教程地址:http://www.showmeai.tech/tutorials/56 本文地址:http://www.showmeai.tech/article-det ...
- Burp intruder暴力攻击web口令
实验目的 利用Burp intruder功能爆破出后台登陆密码admin. 实验原理 1)Burp Suite是Web应用程序测试的最佳工具之一,其多种功能可以帮我们执行各种任务.请求的拦截和修改,扫 ...
- [题解]UVA11029 Leading and Trailing
链接:http://vjudge.net/problem/viewProblem.action?id=19597 描述:求n^k的前三位数字和后三位数字 思路:题目要解决两个问题.后三位数字可以一边求 ...
- TypeScript初识
Typescript 英文官网:https://www.typescriptlang.org/ 中文官网:https://www.tslang.cn/ 介绍 TypeScript 是一种强类型的编程语 ...
- 国内主流大数据厂商太多不知道怎么选?Smartbi满足你的需求
目前的BI市场上有很多大数据的厂商,这也让许多客户眼花缭乱,不知如何下手.比如国内的亿信华辰跟国外的Tableau,QLK, PowerBI 都有非常多便于分析的可视化工具,但是在数据处理分析的功能 ...