zoukankan
html css js c++ java
什么是进程And线程
原创
2015年02月01日 11:49:01
学习.net 时遇到了两个新词汇:进程和线程。书上的太深奥,就查了查资料,整合下,希望对大家有帮助。
【比喻】
:用手去抓苹果,很显然一根手指是不行,你需要至少两根手指才能抓起一个苹果。
在这里,用手抓苹果的事件就是一个进程。抓的过程可能需要多个手指协调,多个手指就是线程。
【进程】
:是操作系统中当前程序的一次执行。
要知道拥有单个CPU的电脑,在严格意义上,一个时间点上操作系统只能进 行同一个工作命令。由于计算机的运行速度快,在工作时可以运行一会A代码,运行一会B代码,交错运行,由于运算速度快,所以一般看 来它好像可以 同时进行多个程序--这就是多进程。同时开着QQ和飞信,这就是多进程。
线程:线程是程序中一个单一的顺序控制流程。进程内一个相对独立的、可调 度的 执行单元,是系统独立调度和分派CPU的基本单位指运行中的程序的调度单位。在单个程序中同时运行多个线程完成不同的工作,称为多线程。线程还 可以自己创建、撤销和切换。就像拿苹果,如果一根手指可以办到,那它就 是单线程,如果需要多根手指,那就是多线程。
进程和线程的区别:
(1)地址空间:进程内的一个执行单元;进程至少有一个线程;它们共享进 程的地 址空间;而进程有自己独立的地址空间;
(2)资源拥有:进程是资源分配和拥有的单位,同一个进程内的线程共享 进程的 资源;
(3)线程是处理器调度的基本单位,但进程不是。
【概念拓 展】
:线程池和死锁。
线 程 池:程序可以有多个线程,这些线程在休眠状态中需要耗费大量时间 来等待 事件发生。为了简化对这些线程的管理,.NET框架为每个 进程提供了一 个线程池,一个线程池有若干个等待操作状态,当一个等待操作完成 时,线程池中的辅助线程会执行回调函数。
死 锁:常被称为“死机“。是指两个或两个以上的进程在执行过程中,由于 竞争 资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它 们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁, 这些永远在互相等待的进程称为死锁进程。
造成死锁的原因有两种:
一是:同一时刻很多程序(进程)争相访问同一资源。
二是:线程对资源的访问没有按照资源占有和释放的顺序来进行。避免线程 死锁进行的方法有:
1. 让线程之间具有排斥性的访问资源,即同一时刻,一个资源只能 被一个线程占用和使用。
2.当一个线程在某一时刻已经拥有了某个资源,但它还继续申请另 外一个新的资源,但该资源已经被其他线程占用,那么就应该将 已经占有的资源进行释放,而不是让它一直等待下去。
3.当一个线程已获得某个资源的时候,应等到使用完这个资源(对 其释放完后),再允许其他线程对此资源进行访问。
4 . 当资源已经被某个线程占有时,应避免所有线程循环等待同一资 源。
查看全文
相关阅读:
Chrome cookies folder
Fat URLs Client Identification
User Login Client Identification
Client IP Address Client Identification
HTTP Headers Client Identification
The Personal Touch Client Identification 个性化接触 客户识别
购物车 cookie session
购物车删除商品,总价变化 innerHTML = ''并没有删除节点,内容仍存在
453
购物车-删除单行商品-HTMLTableElement.deleteRow()
原文地址:https://www.cnblogs.com/lcword/p/8322393.html
最新文章
php 乘除法原理
order meeting room
新团建立时间 timestamp NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
啊
a
t
选出ip记录表最近的10行数据
从拼团的数据库设计对数据库读写的时耗影响到从产品角度思考拼团规则对于购买成交的影响
the ONLY_FULL_GROUP_BY SQL mode is enabled (which it is by default) 用户变量
“batteries included” philosophy
热门文章
取出最大值的算法
拼团商品列表页 分析 js代码行位置对执行的影响和window.onload的原理 setTimeout传参
super 多重继承 super() function with multilevel inheritance
Paginator Django 分页 When QuerySets are evaluated QuerySets 执行原理 QuerySets are lazy 惰性执行 访问db取数据的时机
xpath-grab english name
Cookies, Security, and Privacy Client Identification
Cookies and Caching Client Identification
Cookies and Session Tracking Client Identification cookie与会话跟踪 客户端识别
combined with the Referer header, to potentially build an exhaustive data set of user profiles and browsing habits Client Identification
Cookies Client Identification
Copyright © 2011-2022 走看看