前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python多线程编程基础3:创建线程与调用函数的区别

Python多线程编程基础3:创建线程与调用函数的区别

作者头像
Python小屋屋主
发布2018-04-16 16:52:21
1.2K0
发布2018-04-16 16:52:21
举报
文章被收录于专栏:Python小屋Python小屋

在上一节Python多线程编程基础2:如何创建线程中,我们已经知道,创建线程并运行实际上也是执行一段代码,那么把这些代码封装到函数中之后,直接调用函数和创建线程再运行有什么区别呢?这是本文要解释的内容。简单地说,调用函数属于阻塞模式,必须要等函数运行结束并返回之后才能执行后面的代码;而线程属于并发非阻塞模式,创建并启动子线程之后子线程和主线程并发执行,除非有现成同步的代码和机制。

下面代码首先定义一个函数,然后调用这个函数,函数执行结束之后再继续执行后面的代码:

from threading import Thread

from time import sleep

def demo(n):

sleep(n)

print(n)

demo(3)

print('ok')

运行结果为:

3

ok

而下面的代码首先定义函数,然后创建线程来执行这个函数中的代码:

from threading import Thread

from time import sleep

def demo(n):

sleep(n)

print(n)

t = Thread(target=demo, args=(3,))

t.start()

print('ok')

运行结果为:

ok

3

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-07-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python小屋 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档