python 线程与进程

原创 2016年05月30日 11:27:01

0. 计算100w随机数的和,分别用多进程和多线程,结果是在同样的环境下,多进程更能压榨每个cpu使用率,因为GIL的存在,所以python里面的多线程效率有瓶颈。

当然老司机知道,这种cpu密集的运算,本来就不应该用多线程来做,这是后话。
例子是抄的,对比一下很明显。

import multiprocessing
import random

def compute(n):
    return sum(
        [random.randint(1, 100) for i in range(1000000)])


pool = multiprocessing.Pool(8)
print "results: %s" % pool.map(compute, range(8))
import random
import threading

results = []

def compute():
    results.append(sum(
        [random.randint(1, 100) for i in range(1000000)]))


workers = [threading.Thread(target=compute) for x in range(8)]

for worker in workers:
    worker.start()

for worker in workers:
    worker.join()

print "results: %s" % results

Python多线程与多进程

查看原文:http://www.wyblog.cn/2016/12/05/python%e5%a4%9a%e7%ba%bf%e7%a8%8b%e4%b8%8e%e5%a4%9a%e8%bf%9b%e7...
  • wy250229163
  • wy250229163
  • 2016年12月22日 21:22
  • 1439

Python 中的多线程,多进程,并发,并行,同步,通信

本文简单介绍了Python中并发和并行的机理,如何实现并发和并,以及一些多线程,多进程之间通信和同步的问题...
  • timemachine119
  • timemachine119
  • 2017年01月05日 11:32
  • 2401

python(九)线程与进程(上):线程

目录paramiko 模块 线程与进程之线程一、paramiko 模块1、堡垒机准备paramiko:基于ssh用于连接远程服务器并执行相关操作,批量管理 安装 yum -y install pyt...
  • fgf00
  • fgf00
  • 2016年10月10日 01:09
  • 3518

Python 进程线程之间通信方式(1,基于队列的)

1.Python队列的基本示例 #!/usr/bin/env python # -*- coding:utf-8 -*- #Author:xp #blog_url: http://blog...
  • wuxingpu5
  • wuxingpu5
  • 2017年06月30日 16:51
  • 178

java,python守护进程守护线程Daemon(经典好文)

source: http://blog.sina.com.cn/s/blog_63dac1ed01017tva.html 1.所谓守护线程就是运行在程序后台的线程,程序的主线程Main(比方...
  • frankarmstrong
  • frankarmstrong
  • 2013年05月03日 16:18
  • 1742

Python学习笔记(四) 之进程和线程

1.多进程1.1 multiprocessing多进程模块由于Python是跨平台的,自然也应该提供一个跨平台的多进程支持。multiprocessing模块就是跨平台版本的多进程模块。multipr...
  • Thousa_Ho
  • Thousa_Ho
  • 2017年04月05日 23:11
  • 195

python 学习笔记7进程和线程

多进程os 系统模块提供了进程的很多东西 os.getpid() 获取进程id pid = os.fork() fork创建一个新的进程 父进程返回子进程id 子进程返回0multiproce...
  • bleuesprit
  • bleuesprit
  • 2016年12月08日 20:23
  • 137

Python(十三)线程和进程

线程与进程线程与进程是操作系统里面的术语,简单来讲,每一个应用程序都有一个自己的进程。操作系统会为这些进程分配一些执行资源,例如内存空间等。在进程中,又可以创建一些线程,他们共享这些内存空间,并由操作...
  • shuzhuchengfu
  • shuzhuchengfu
  • 2017年10月24日 15:12
  • 64

Python学习笔记(三):进程与线程

一、进程(process) 在Python中,进程的主要模块为subprocess模块,此模块旨在代替老的os.system,os.spawn*,os.popen*,popen2,commands模块...
  • JerryLife
  • JerryLife
  • 2017年02月01日 20:30
  • 256

Python进程和线程操作

一.进程 1.进程的运行环境     每个运行的进程,系统都会分配一个相关的运行环境,一般的可以将该运行环境认为是进程环境变量的集合,当进程启动的时候,环境变量就确定了,只有当前进程才能够修改其环...
  • tianmaxingkong_
  • tianmaxingkong_
  • 2017年01月28日 14:09
  • 241
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python 线程与进程
举报原因:
原因补充:

(最多只允许输入30个字)