python — 多线程处理(单进程/多进程)

2019-03-16 14:54 

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/xwbk12/article/details/77623071

python — 多线程处理

1、一个进程执行完后,继续下一个进程

root@72132server:~# cd /root/python/multiprocess/
root@72132server:~/python/multiprocess# ls
multprocess.py


root@72132server:~/python/multiprocess# cat multprocess.py 
#!/usr/bin/python
# --*-- coding:utf-8 --*--

from multiprocessing import Process,Lock#启用多进程,与进程锁
import time,os

def sayhi(i):
    print 'hello world!!!', i
    time.sleep(10)

#lock = Lock()

for n in range(100):#执行n=100次
    p = Process(target=sayhi,args=(n,))#调用函数def,若def函数里面有参数,就是使用args带值赋值,若函数没有参数的话就args()为空。
    p.start()
    p.join()#一个进程结束才会继续下一个进程。如果注释这句意思是一百个进程同时发起

root@72132server:~/python/multiprocess# 

运行情况:

1)进程查看

root@72132server:~# cd /root/python/multiprocess/
root@72132server:~/python/multiprocess# ls
multprocess.py
root@72132server:~/python/multiprocess# vi multprocess.py 
root@72132server:~/python/multiprocess# ps -ef | grep multi
root     24064 23930  0 20:45 pts/3    00:00:00 grep multi
root@72132server:~/python/multiprocess# ps -ef | grep multi
root     24066 23930  0 20:45 pts/3    00:00:00 grep multi
root@72132server:~/python/multiprocess# ps -ef | grep multi
root     24069 23930  0 20:45 pts/3    00:00:00 grep multi
root@72132server:~/python/multiprocess# ps -ef | grep multi
root     24071 23930  0 20:45 pts/3    00:00:00 grep multi
root@72132server:~/python/multiprocess# ps -ef | grep multi
root     24073 23930  0 20:46 pts/3    00:00:00 grep multi
root@72132server:~/python/multiprocess# ps -ef | grep multi
root     24075 23930  0 20:46 pts/3    00:00:00 grep multi
root@72132server:~/python/multiprocess# 

2)脚本运行

root@72132server:~/python/multiprocess# vi multprocess.py 
root@72132server:~/python/multiprocess# python multprocess.py 
hello world!!! 0
hello world!!! 1
hello world!!! 2
hello world!!! 3
hello world!!! 4
hello world!!! 5
hello world!!! 6
hello world!!! 7
hello world!!! 8
hello world!!! 9
hello world!!! 10
hello world!!! 11

2、100个进行同时运行

root@72132server:~/python/multiprocess# ls
multprocess.py
root@72132server:~/python/multiprocess# cat multprocess.py 
#!/usr/bin/python
# --*-- coding:utf-8 --*--

from multiprocessing import Process,Lock#启用多进程,与进程锁
import time,os

def sayhi(i):
    print 'hello world!!!', i
    time.sleep(10)

#lock = Lock()

for n in range(100):#执行n=100次
    p = Process(target=sayhi,args=(n,))#调用函数def,若def函数里面有参数,就是使用args带值赋值,若函数没有参数的话就args()为空。
    p.start()
    p.join()#一个进程结束才会继续下一个进程。如果注释这句意思是一百个进程同时发起

root@72132server:~/python/multiprocess# 


root@72132server:~/python/multiprocess# vi multprocess.py 
root@72132server:~/python/multiprocess# cat multprocess.py 
#!/usr/bin/python
# --*-- coding:utf-8 --*--

from multiprocessing import Process,Lock#启用多进程,与进程锁
import time,os

def sayhi(i):
    print 'hello world!!!', i
    time.sleep(10)

#lock = Lock()

for n in range(100):#执行n=100次
    p = Process(target=sayhi,args=(n,))#调用函数def,若def函数里面有参数,就是使用args带值赋值,若函数没有参数的话就args()为空。
    p.start()
    #p.join()#一个进程结束才会继续下一个进程。如果注释这句意思是一百个进程同时发起

root@72132server:~/python/multiprocess# 

运行情况
1)进程查看

这里写图片描述

2)脚本运行(1秒跑完)

root@72132server:~/python/multiprocess# python multprocess.py 
hello world!!! 0
hello world!!! 2
hello world!!! 3
hello world!!! 5
hello world!!! 7
hello world!!! 8
hello world!!! 6
hello world!!! 9
hello world!!! 10
hello world!!! 11
hello world!!! 14
hello world!!! 4
hello world!!! 15
hello world!!! 16
hello world!!! 1
hello world!!! 13
hello world!!! 18
hello world!!! 20
hello world!!! 19
hello world!!! 21
hello world!!! 12
hello world!!! 17
hello world!!! 23
hello world!!! 24
hello world!!! 26
hello world!!! 27
hello world!!! 22
hello world!!! 29
hello world!!! 31
hello world!!! 32
hello world!!! 33
hello world!!! 34
hello world!!! 28
hello world!!! 25
hello world!!! 30
hello world!!! 35
hello world!!! 36
hello world!!! 39
hello world!!! 41
hello world!!! 37
hello world!!! 40
hello world!!! 42
hello world!!! 43
hello world!!! 46
hello world!!! 47
hello world!!! 48
hello world!!! 38
hello world!!! 44
hello world!!! 45
hello world!!! 50
hello world!!! 51
hello world!!! 53
hello world!!! 54
hello world!!! 55
hello world!!! 57
hello world!!! 49
hello world!!! 58
hello world!!! 59
hello world!!! 60
hello world!!! 61
hello world!!! 62
hello world!!! 63
hello world!!! 64
hello world!!! 65
hello world!!! 66
hello world!!! 67
hello world!!! 68
hello world!!! 69
hello world!!! 56
hello world!!! 70
hello world!!! 52
hello world!!! 71
hello world!!! 72
hello world!!! 73
hello world!!! 76
hello world!!! 74
hello world!!! 78
hello world!!! 79
hello world!!! 80
hello world!!! 82
hello world!!! 77
hello world!!! 83
hello world!!! 84
hello world!!! 85
hello world!!! 86
hello world!!! 87
hello world!!! 81
hello world!!! 91
hello world!!! 75
hello world!!! 89
hello world!!! 92
hello world!!! 88
hello world!!! 90
hello world!!! 93
hello world!!! 95
hello world!!! 94
hello world!!! 96
hello world!!! 98
hello world!!! 9

发表评论

您必须 登录 才能发表留言!