创建进程的方法

今天学习了创建进程的方法,有两种方法。
方法一:Process([group[,target[,name[,args[,kwargs]]]])
target:进程所调用的对象,一般情况跟函数名,记得不要有括号。
args:调用对象的位置参数,是一个元组。注意:如果参数只有一个,一定记得加逗号。
kwargs:------关键字参数,是一个字典。
name:进程的名字。
方法二:创建一个进程类,这个进程类一定要继承“Process”类
下面来一段代码来实现。
from multiprocessing import Process
import os
from urllib import request

步骤1:继承Process类

class Process_Class(Process):
# 因为Process类本身也有__init__方法,这个子类相当于重写了这个方法。
# 但这样会带来一个问题,我们并没有完成的初始化一个进程类,所以就不能使用这个类继承的一些方法和属性
# 步骤2:使用父类初始化方法初始子类
def init(self,url):
Process.init(self)
self.url = url
# 步骤3:重写Process类中的run方法
def run(self):
print(‘当前进程id:’, os.getpid(), os.getppid())
# 文件名
file_name = self.url.split(’/’)[-1]
# 网络请求
response = request.urlopen(self.url)
# 获取响应的内容
content = response.read()
# 保存
with open(file_name, ‘wb’) as fp:
fp.write(content)
if name == ‘main’:
# 创建URL列表
url_list = [‘http://www.langlang2017.com/img/banner1.png’,
http://www.langlang2017.com/img/banner2.png’]
for url in url_list :
# 把调用类赋值给p
p = Process_Class(url)
# 开始调用
p.start()
在这里插入图片描述

参与评论 您还未登录,请先 登录 后发表或查看评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

饶水胜

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值