Python 多线程实例详解

yipeiwu_com6年前Python基础

Python 多线程实例详解

多线程通常是新开一个后台线程去处理比较耗时的操作,Python做后台线程处理也是很简单的,今天从官方文档中找到了一个Demo.

实例代码:

import threading, zipfile 
 
class AsyncZip(threading.Thread): 
  def __init__(self, infile, outfile): 
    threading.Thread.__init__(self) 
    self.infile = infile 
    self.outfile = outfile 
  def run(self): 
    f = zipfile.ZipFile(self.outfile, 'w', zipfile.ZIP_DEFLATED) 
    f.write(self.infile) 
    f.close() 
    print('Finished background zip of:', self.infile) 
 
background = AsyncZip('mydata.txt', 'myarchive.zip') 
background.start() 
print('The main program continues to run in foreground.') 
 
background.join()  # Wait for the background task to finish 
print('Main program waited until background was done.') 

结果:

The main program continues to run in foreground. 
Finished background zip of: mydata.txt 
Main program waited until background was done. 
Press any key to continue . . . 

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

相关文章

TensorFlow 滑动平均的示例代码

滑动平均会为目标变量维护一个影子变量,影子变量不影响原变量的更新维护,但是在测试或者实际预测过程中(非训练时),使用影子变量代替原变量。 1、滑动平均求解对象初始化 ema = tf...

Numpy中对向量、矩阵的使用详解

在下面的代码里面,我们利用numpy和scipy做了很多工作,每一行都有注释,讲解了对应的向量/矩阵操作。 归纳一下,下面的代码主要做了这些事: 创建一个向量 创建一个矩阵...

pytorch 指定gpu训练与多gpu并行训练示例

一. 指定一个gpu训练的两种方法: 1.代码中指定 import torch torch.cuda.set_device(id) 2.终端中指定 CUDA_VISIBLE_DEV...

Python实现微信翻译机器人的方法

Python实现微信翻译机器人的方法

相信大家在日常学习或者是阅读英文文章的过程中,难免会出现几个不认识的单词,或者想快速翻译某段英文的意思。 今天,利用Python爬虫等知识,教大家打造一个微信下的翻译小助手。好吧,开始干...

Python常用模块之requests模块用法分析

本文实例讲述了Python常用模块之requests模块用法。分享给大家供大家参考,具体如下: 一. GET请求 1.访问一个页面 import requests r=request...