上一篇说到thread模块,我们要自己解决线程锁。其实也没有什么啦。只是现在的人都比较懒,既然有高级封装的函数为什么要自己写。

所以就有了threading。

其实都一样啦。

来一个最简单的threading代码:

 import threading       #导入thrteading模块

 def run():                  #线程函数,打印线程名字和i的值
for i in range(100):
print(threading.current_thread().getName()+"-------"+str(i)) threads = [] #创建线程列表 for i in range(10): #创建线程,并添加进线程列表
t = threading.Thread(target = run) threads.append(t) for i in threads: #启动所有线程
i.start() for i in threads: #主线成等待所有子线程结束
i.join()

以上代码与与thread模块的不同仅在于join()函数代替了我们去写线程锁。

仅此而已。

如果可以更简单:

 import threading

 def run():
for i in range(100):
print(i) t = threading.Thread(target = run)
t.start()
t.join()

主函数除了启动了一个子线程,啥也没干。

python 多线程threading的更多相关文章

  1. python多线程threading.Lock锁用法实例

    本文实例讲述了python多线程threading.Lock锁的用法实例,分享给大家供大家参考.具体分析如下: python的锁可以独立提取出来 mutex = threading.Lock() #锁 ...

  2. [转]python 多线程threading简单分析

    多线程和多进程是什么自行google补脑 对于python 多线程的理解,我花了很长时间,搜索的大部份文章都不够通俗易懂.所以,这里力图用简单的例子,让你对多线程有个初步的认识. 单线程 在好些年前的 ...

  3. Python多线程 - threading

    目录 1. GIL 2. API 3. 创建子线程 4. 线程同步 4.1. 有了GIL,是否还需要同步? 4.1.1. 死锁 4.1.2. 竞争条件 4.1.3. GIL去哪儿了 4.2. Lock ...

  4. python多线程threading

    本文通过 4个example 介绍python中多线程package —— threading的常用用法, 包括调用多线程, 同步队列类Queue, Ctrl+c结束多线程. example1. 调用 ...

  5. Python(多线程threading模块)

    day27 参考:http://www.cnblogs.com/yuanchenqi/articles/5733873.html CPU像一本书,你不阅读的时候,你室友马上阅读,你准备阅读的时候,你室 ...

  6. [Python 多线程] threading.local类 (六)

    在使用threading.local()之前,先了解一下局部变量和全局变量. 局部变量: import threading import time def worker(): x = 0 for i ...

  7. 再看python多线程------threading模块

    现在把关于多线程的能想到的需要注意的点记录一下: 关于threading模块: 1.关于 传参问题 如果调用的子线程函数需要传参,要在参数后面加一个“,”否则会抛参数异常的错误. 如下: for i ...

  8. python多线程threading下载示例

    #coding:utf-8 # windows中测试不通过,下载的图片不完整 # 通过多线程下载图片 import requests import threading class downloader ...

  9. python 多线程threading的学习一

    1. import threading #引入线程模块 2 申明实例 t = threading.Thread(target  = fun, args = (,)) 说明:参数target 是要运行的 ...

随机推荐

  1. [资源] Open source packages on SLAM

    OpenSLAM http://openslam.org/ Most main stream open source slam resource can be found on OpenSLAM, w ...

  2. CSS-浮动篇float

    Float是一个强大的属性,但是它也会困扰我们如果我们不知道它的工作原理的话.这篇文章主要介绍float的原理和基本用法. 我们可以看到float在印刷世界的应用-杂志.很多杂志文章都是左边一个图片, ...

  3. Scrum Meeting 1-20151201

    任务安排 姓名 今日任务 明日任务 困难 董元财 学习下拉刷新的实现 完成下拉刷新的实现 手机的点击动作长按和下拉有类似的地方,比较难解决 胡亚坤 学习圆形头像代码设计 完成圆形头像代码设计 无 刘猛 ...

  4. 解决sublime text3中的输入法不根随光标问题

    日本的一位大神开发了一款插件用在Sublime Text上,以缓解输入法不跟随光标移动的问题.当然这个问题并没有完美的解决,据一些用户的反映,输入过程中还是偶尔会发生输入法不跟随光标移动的问题,不过确 ...

  5. hdu4511小明系列故事——女友的考验(ac自动机+最短路)

    链接 预处理出来任意两点的距离,然后可以顺着trie树中的节点走,不能走到不合法的地方,另开一维表示走到了哪里,依次来更新. 注意判断一下起点是不是合法. #include <iostream& ...

  6. springMVC的两种下载方式

    1:通过httpServletResponse对象实现下载,觉得LOW的自行跳过 2:有人觉得既然使用的是MVC就要使用spring的方式

  7. 尽可能保留原有数据,建立UEFI与BIOS双启PE优盘

    尽可能保留原有数据,建立UEFI与BIOS双启PE优盘1.确保优盘或者移动硬盘有一个FAT32分区,如果没有FAT32分区,就用傲梅分区助手或者ppm转换一个现有的分区到FAT32分区0x0C,或者新 ...

  8. 在python中使用matplotlib中的Matplotlib-Animation “No MovieWriters Available”

    在使用官方的示例代码中,一部分使用了ffmpeg 在执行时会报如题一样的错误 解决: 下载windows的版本,解压,然后将bin目录加入系统环境变量的路径中 如:D:\Program Files\f ...

  9. VS2012添加PlaySound引用

    <windows程序设计>中给出的demo代码中有PlaySound的使用,但是因为这个是代码是针对VC6.0,其中说明的引用的添加和VS2012中有些许不同. 在VC6.0中projec ...

  10. dedecms最新版本修改任意管理员漏洞+getshell+exp

    此漏洞无视gpc转义,过80sec注入防御. 补充下,不用担心后台找不到.这只是一个demo,都能修改任意数据库了,还怕拿不到SHELL? 起因是全局变量$GLOBALS可以被任意修改,随便看了下,漏 ...