python 多进程的两种创建方式
Python中使用线程有两种方式:函数或者用类来包装线程对象。
第一种---------函数
菜鸟教程的我没看懂,说说我自己懂的----看视频理解的
import time
import threading def coding():
for x in range(3):
print('正在写代码:%s' % threading.current_thread()) # 获取进程名字
time.sleep(1) def drawing():
for x in range(3):
print('正在画图:%s' % threading.current_thread())
time.sleep(1) def main():
t1 = threading.Thread(target=coding) # 创建子线程 指定进程要运行的函数
t2 = threading.Thread(target=drawing) # 传递函数名 不需要带() 带()的是传递函数返回值 t1.start() # 启动进程
t2.start()
print(threading.enumerate()) #输出当前的进程数 if __name__ == '__main__':
main()
第二种----类
简单点说,就是创建一个类,然后把需要作为进程运行的内容放在run 函数中就行了,之后通过创建对象的方式创建进程
import threading
import time class CodingThread(threading.Thread):
def run(self):
for x in range(3):
print('正在写代码:%s' % threading.current_thread()) # 获取进程名字
time.sleep(1) class DrawingThread(threading.Thread):
def run(self):
for x in range(3):
print('正在画图:%s' % threading.current_thread())
time.sleep(1) def main():
t1 = CodingThread() # 通过创建对象的方式创建进程
t2 = DrawingThread() t1.start()
t2.start() if __name__ == '__main__':
main()
python 多进程的两种创建方式的更多相关文章
- python类的两种创建方式
参考: https://blog.csdn.net/likunkun__/article/details/81949479
- 【转载】 Java中String类型的两种创建方式
本文转载自 https://www.cnblogs.com/fguozhu/articles/2661055.html Java中String是一个特殊的包装类数据有两种创建形式: String s ...
- String变量的两种创建方式
在java中,有两种创建String类型变量的方式: String str01="abc";//第一种方式 String str02=new String("abc&qu ...
- Android中Fragment的两种创建方式
fragment是Activity中用户界面的一个行为或者是一部分.你可以在一个单独的Activity上把多个Fragment组合成为一个多区域的UI,并且可以在多个Activity中再使用.你可以认 ...
- cocos2dx 帧动画的两种创建方式
看了好几天cocos2dx的帧动画,现在才有点眉目,为了高效期间我们一般会用到 精灵帧缓存(CCSpriteFrameCache) 和动画缓存(CCAnimationCache) .大体的操作步骤: ...
- java多线程总结一:线程的两种创建方式及优劣比较
1.通过实现Runnable接口线程创建 (1).定义一个类实现Runnable接口,重写接口中的run()方法.在run()方法中加入具体的任务代码或处理逻辑. (2).创建Runnable接口实现 ...
- java多线程总结:线程的两种创建方式及优劣比较
1.通过实现Runnable接口线程创建 (1).定义一个类实现Runnable接口,重写接口中的run()方法.在run()方法中加入具体的任务代码或处理逻辑. (2).创建Runnable接口实现 ...
- java多线程总结一:线程的两种创建方式及比较
1.线程的概念:线程(thread)是指一个任务从头至尾的执行流,线程提供一个运行任务的机制,对于java而言,一个程序中可以并发的执行多个线程,这些线程可以在多处理器系统上同时运行.当程序作为一个应 ...
- Python基础:Python运行的两种基本方式
完成Python的安装之后,我们可以开始编写Python代码以及运行Python程序了.我们来看一下运行Python具体有哪几种方式 1.REPL 所谓REPL即read.eva.print.loop ...
随机推荐
- 【基于微信小程序的社区电商平台】需求分析心得——小豆芽
一.项目内容 基于微信小程序,做一个社区电商平台,抓住社区电商的特点,做出特色,与微信集成,实现商品的个性化发布,以及个性化营销. 个性化发布:用户可以在应用上直接发布自己的商品,通过搜索心愿单可以查 ...
- grep用法
正则表达式只是一种表示法,只要工具支持这种表示法, 那么该工具就可以处理正则表达式的字符串.vim.grep.awk .sed 都支持正则表达式,也正是因为由于它们支持正则,才显得它们强大:在以前上班 ...
- vs2017 无法提交到tfs的 git存储库
tfs 是2018版本 使用git 工具是可以提交成功. 使用vs2017的 就会一直提示 授权失败 也可以使用新安装的git https://blog.csdn.net/Meteor_s/artic ...
- mpeg2文件分析(纯c解析代码)
参考链接: 1. MPEG-2码流结构分析 https://www.cnblogs.com/CoderTian/p/9246225.html(本文语法采用这里的截图,代码原创) 1. mpeg2的码流 ...
- ZABBIX安装过程中relocation error报错解决办法
错误提示: /usr/sbin/zabbix_server: relocation error: /usr/sbin/zabbix_server: symbol mysql_next_result, ...
- hibernate 保存的flush怎么用?
hibernate 中的flush方法只有在上面的数据保存用了hibernate的方法保存了,但是在同一个事物当中需要用SQL的方法去查上面保存的数据,这个时候上方的hibernate保存后面就需要用 ...
- 当锚点定位遇上position: fixed
<!DOCTYPE html><html> <head> <title>当锚点定位遇上position: fixed</title> < ...
- linux介绍、命令(基本命令、常用命令、使用方法、基本格式)
操作系统(科普章节) 目标 了解操作系统及作用 1. 操作系统(Operation System,OS) 一个例子说明操作系统 操作系统作为接口的示意图 没有安装操作系统的计算机,通常被称为 裸机 如 ...
- vue生命周期和钩子函数
new Vue 创建vue实例 init events & liftcycle 开始初始化 beforeCreate 组件刚被创建,组件属性计算之前,如data属性等 init injecti ...
- 计算1~100之间,能被3整除但是不能被7整除的数的和(C语言)
#include<stdio.h> int main(agrc *agrv) { int n,i; int sum=0; scanf("%d",&n); for ...