并发编程的概念

1.CPU核心数、线程数

位宽32/64位指的是CPU位宽,位宽能处理更大范围的数据运算和更大容量的内容,例如:32位支持4G以内的内存等。

依靠多个CPU同时并行地运行程序称为并行处理。

2.CPU时间片轮转机制

每个进程被分派一个时间段,称作它的时间片,即该进程允许运行的时间。

百度百科的概念:如果在时间片结束时进程还在运行,则CPU被剥夺并分配给另一个进程。如果进程在时间片结束前阻塞或结束,则CPU当即进行切换。调度程序所要做的就是维护一张就绪进程列表,当进程用完它的时间片后,它被移动队伍的末尾。

3.进程与线程

进程是程序运行资源分配的最小单位。

线程是CPU调度的最小单位,必须依赖于进程而存在。

4.并发运行

在操作系统的管理下,所有正在运行的进程轮流使用CPU,每个进程允许占用CPU的时间非常短(比如10ms),这样用户根本感觉不到CPU轮流为多个进程服务,就好像所有的进程都在不间断地运行一样。但实际上,因为线程是CPU的最小运行单位,在任何一个时间内有且仅有一个线程占有CPU。如果进程产生的总线程数小于CPU的核数,则不同的进程的线程可以分配给不同的CPU来运行,这样,各个进程就是真正同时运行的,这便是并行。但如果进程分配的线程数大于CPU的核心数,则这时候就要使用并发技术。

5.吞吐量:

网络吞吐量:在某个时刻,在网络中的两个节点之间,提供给网络应用的剩余带宽。即在没有帧丢失的情况下,设备能够接受的最大速率。

系统吞吐量:系统在单位时间内所处理的信息量,它以每小时或每天所处理的进程数来度量。

6.高并发编程的意义及好处及注意事项

(1)充分利用CPU的资源

(2)加快响应用户的时间

(3)可以使代码模块化、异步化、简单化。

注意问题:

(1)线程之间的安全

(2)线程之间的死循环

(3)线程太多会将服务器资源耗尽形成司机宕机。


评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值