首页 > 编程语言 > 详细

并发编程-线程-11线程基础

时间:2019-09-21 12:51:31      阅读:97      评论:0      收藏:0      [点我收藏+]

一丶什么是线程

进程线程其实都是虚拟单位,都是用来帮助我们形象的描述某种事物

二丶线程和进程

进程:资源单位
线程:执行单位
将内存比如成工厂
那么进程就相当于是工厂里面的车间
而你的线程就相当于是车间里面的流水线
ps:每个进程都自带一个线程,线程才是真正的执行单位,进程只是在线程运行过程中
进程提供代码运行所需要的资源

三丶为什么要有线程

为什么要有线程
开进程
1.申请内存空间 耗资源
2."拷贝代码" 耗资源

? 开线程
? 一个进程内可以起多个线程,并且线程与线程之间数据是共享的
? ps:开启线程的开销要远远小于开启进程的开销

四丶创建线程的两种方式

4.1直接创建

开线程不需要在__main__代码块内 但是习惯性的还是写在__main__代码块内

from threading import Thread
import time

def task(name):
    print('%s is running'%name)
    time.sleep(3)
    print('%s is over'%name)
# 开线程不需要在__main__代码块内 但是习惯性的还是写在__main__代码块内
t = Thread(target=task,args=('egon',))
t.start()  # 告诉操作系统开辟一个线程  线程的开销远远小于进程
# 小的代码执行完 线程就已经开启了
print('主')

4.2类的继承实例化创建

from threading import Thread
import time

class MyThread(Thread):
    def __init__(self,name):
        super().__init__()
        self.name = name

    def run(self):
        print('%s is running'%self.name)
        time.sleep(3)
        print('%s is over'%self.name)

t = MyThread('egon')
t.start()
print('主')

并发编程-线程-11线程基础

原文:https://www.cnblogs.com/suren-apan/p/11561949.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!