线程与多线程、进程

1、单线程:单线程是一个人干一件事,也是主线程,从上到下有顺序的去干,python解释器就是个单线程(主线程),所以当事情多了,一个人也办法,就等着拜

2、多线程:有2个线程以及以上的叫多线程,分为主线程和子线程 (主线程和子线程是相对的,正在干活的是主线程),有一大堆的事情,很多人一起干,当主线程空档期,子线程抢占活,但是始终只有一个人在干活(主线程)。(主线程累啦,子线程抢占活,这是子线程就变成主线程。多线程特点:共同干一件事情,抢占资源,利用了主线程的空档期,这个Cpython的特性,就是Cpython慢的原因,说白了伪并发,全局解释器,不解释啦) 应用:一般是用于IO的读写操作,详细的看博客:http://www.cnblogs.com/Eva-J/p/5109737.html

时间: 2024-08-07 21:19:16

线程与多线程、进程的相关文章

进程、线程、多线程的网址集结(看)

面试总是会问这方面的内容,自己虽然知道一点点点点的概念,但是并不是很透彻的了解,这次,面试就挂在这个问题上了.哎.还是先提前写一下这个吧.进程和线程. 1.进程和线程 下面这个总结得挺好的. http://www.cnblogs.com/obama/archive/2013/04/12/3016509.html 2.多线程的讲解 http://blog.csdn.net/column/details/killthreadseries.html http://blog.csdn.net/morew

进程、线程、多线程相关总结

进程.线程.多线程相关总结 一.说说概念 1.进程(process) 狭义定义:进程就是一段程序的执行过程. 广义定义:进程是一个程序关于某个数据集合的一次运行.它是操作系统动态执行的基本单元,在传统的操作系统中,进程既是基本的分配单元,也是基本的执行单元. 简单的来讲进程的概念主要有两点:第一,进程是一个实体.每一个进程都有它自己的地址空间,一般情况下,包括文本区域(text region).数据区域(data region)和堆栈(stack region).文本区域存储处理器执行的代码:数

多进程 multiprocessing 多线程Threading 线程池和进程池concurrent.futures

multiprocessing.procsess 定义一个函数 def func():pass 在if __name__=="__main__":中实例化 p = process(target=子进程要执行的函数,args(函数的参数且必须以元组的方式传参)) p.start() 开启子进程 p.join() 感知子进程的结束,主进程等待子进程执行完后才退出 p.terminate() 结束一个子进程 p.is_alive() 查看某个进程是否还在运行 属性 p.name p.pid

C# 进程、线程和多线程

1.进程(Process)是Windows系统中的一个基本概念,它包含着一个运行程序所需要的资源.一个正在运行的应用程序在操作系统中被视为一个进程,进程可以包括一个或多个线程.线程是操作系统分配处理器时间的基本单元,在进程中可以有多个线程同时执行代码.进程之间是相对独立的,一个进程无法访问另一个进程的数据(除非利用分布式计算方式),一个进程运行的失败也不会影响其他进程的运行,Windows系统就是利用进程把工作划分为多个独立的区域的.进程可以理解为一个程序的基本边界.是应用程序的一个运行例程,是

线程及与进程的对比

一.为什么要引入线程 进程是为了提高CPU的执行效率,减少因程序等待带来的CPU空转以及其他计算机软硬件资源而提出来的.进程是一个资源拥有者,因而在进程的创建.撤消和切换中,系统必须为之付出较大的时空开销.也正因为如此,在系统中所设置的进程数目不宜过多,进程切换的频率也不宜太高,但这也就限制了并发程度的进一步提高.如何能使多个程序更好地并发执行,同时又尽量减少系统的开销,已成为近年来设计操作系统时所追求的重要目标.于是,有不少操作系统的学者们想到,可否将进 程的上述属性分开,由操作系统分开来进行

13 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件  queue队列 生产者消费者模型 Queue队列 开发一个线程池

本节内容 操作系统发展史介绍 进程.与线程区别 python GIL全局解释器锁 线程 语法 join 线程锁之Lock\Rlock\信号量 将线程变为守护进程 Event事件 queue队列 生产者消费者模型 Queue队列 开发一个线程池 进程 语法 进程间通讯 进程池 操作系统发展史 手工操作(无操作系统) 1946年第一台计算机诞生--20世纪50年代中期,还未出现操作系统,计算机工作采用手工操作方式. 手工操作程序员将对应于程序和数据的已穿孔的纸带(或卡片)装入输入机,然后启动输入机把

Python socket进阶 多线程/进程

xSocket语法及相关 Socket Families(地址簇) socket.AF_UNIX unix本机进程间通信  socket.AF_INET IPV4 socket.AF_INET6  IPV6 上面的这些内容代表地址簇,创建socket必须指定,默认为IPV4 Socket Types socket.SOCK_STREAM  #for tcp socket.SOCK_DGRAM   #for udp  socket.SOCK_RAW     #原始套接字,普通的套接字无法处理ICM

网络编程三---多线程/进程解决并发问题

前文列出的代码给大家展示了一个最简单的网络程序,但正如文章末尾所提的,这个最简单的网络程序最大的缺点是服务端一次只能服务一个客户端,就比如说你去吃饭,饭店只有一个服务员, 而且服务员在客户离开之前只能为一个客户服务,也就是说你只能等待你前面的客户吃好饭离开了,然后你才能进去吃饭,而在你吃饭的时候时候,你后面来的人都得等你吃完饭才能轮到你后面一个人吃饭.这种模式的缺点很明显,因为在你进去点好菜到买单前的这段时间,这个服务员都是空闲的,为什么不让服务员在这个空闲时间让其他客户进来服务员为他点菜呢?在

Java线程及多线程技术及应用

第6 章 Java线程及多线程技术及应用 6.1线程基本概念 1.进程和线程的基础知识 l 进程:运行中的应用程序称为进程,拥有系统资源(cpu.内存) l 线程:进程中的一段代码,一个进程中可以哦有多段代码.本身不拥有资源(共享所在进程的资源) 在java中,程序入口被自动创建为主线程,在主线程中可以创建多个子线程. 区别: 1.是否占有资源问题 2.创建或撤销一个进程所需要的开销比创建或撤销一个线程所需要的开销大. 3.进程为重量级组件,线程为轻量级组件 l 多进程: 在操作系统中能同时运行