1) 什么是线程?
线程是操作系统能够进行运算调度的最小单位,它被包含在进程之中,是进程中的实际运作单位。程序员可以通过它进行多处理器编程,你可以使用多线程对运算密集型任务提速。比如,如果一个线程完成一个任务要100毫秒,那么用十个线程完成改任务只需10毫秒。Java在语言层面对多线程提供了卓越的支持,它也是一个很好的卖点。欲了解更多详细信息请点击这里。
2) 线程和进程有什么区别?
线程是...
分类:
编程语言 时间:
2015-05-15 10:43:01
阅读次数:
157
第4章:线程
是什么?
CPU使用的基本单元
组成
线程ID、程序计数器、寄存器集合、栈
多线程优点
响应度高
资源共享
经济
多处理器体系结构的利用
多线程模型提供线程支持的方法:
用户线程
内核线程
三种模型
模型
概念
特点 多对一
将许多用户线程映射到一个内核线程
一个线程阻塞,进程阻塞;不能并行运行于多个处理器
一对一
将每个用户线程都映射到内核线程...
分类:
编程语言 时间:
2015-05-04 20:18:01
阅读次数:
153
并发和竞争发生在两类体系中: 对称多处理器(SMP)的多个CPU 内核可抢占的单CPU系统 访问共享资源的代码区域称为临界区(critical sections),临界区需要以某种互斥机制加以保护。在驱动程序中,当多个线程同时访问相同的资源(critical sections)时(驱动程序中的全局....
分类:
系统相关 时间:
2015-04-17 22:04:47
阅读次数:
230
虚拟机层面Python虚拟机使用GIL(Global Interpreter Lock,全局解释器锁)来互斥线程对共享资源的访问,暂时无法利用多处理器的优势。语言层面在语言层面,Python对多线程提供了很好的支持,Python中多线程相关的模块包括:thread,threading,Queue。可...
分类:
编程语言 时间:
2015-04-17 20:20:17
阅读次数:
189
1. Linux多线程概述 1.1. 概述 进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。这就造成进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理器的空转时间支持多处理器和减少上下文切换开销,也就出现了线程。 线程通常叫做轻量级进程。线...
分类:
编程语言 时间:
2015-04-11 17:51:15
阅读次数:
138
1.Linux多线程概述1.1.概述进程是系统中程序执行和资源分配的基本单位。每个进程有自己的数据段、代码段和堆栈段。这就造成进程在进行切换等操作时都需要有比较负责的上下文切换等动作。为了进一步减少处理器的空转时间支持多处理器和减少上下文切换开销,也就出现了线程。线程通常叫做轻量级进程。线程是在共享...
分类:
编程语言 时间:
2015-04-10 21:45:28
阅读次数:
166
本文描述了RSS以及在DPDK中如何配置RSS达到性能提升和统一分发。 > DPDK 1.8.0 ## 什么是RSS RSS(Receive Side Scaling)是一种能够在多处理器系统下使接收报文在多个CPU之间高效分发的网卡驱动技术。 * 网卡对接收...
分类:
其他好文 时间:
2015-04-01 20:25:55
阅读次数:
1790
分代垃圾回收流程示意选择合适的垃圾收集算法串行收集器用单线程处理所有垃圾回收工作,因为无需多线程交互,所以效率比较高。但是,也无法使用多处理器的优势,所以此收集器适合单处理器机器。当然,此收集器也可以用在小数据量(100M左右)情况下的多处理器机器上。可以使用-XX:+UseSerialGC打开。并...
分类:
其他好文 时间:
2015-03-19 21:47:22
阅读次数:
109
##引言## 原子(atom)本意是“不能被进一步分割的最小粒子”,而原子操作(atomic operation)意为”不可被中断的一个或一系列操作” 。在多处理器上实现原子操作就变得有点复杂。本文让我们一起来聊一聊在Inter...
分类:
其他好文 时间:
2015-03-19 18:48:09
阅读次数:
205
1.线程的概念:线程(thread)是指一个任务从头至尾的执行流,线程提供一个运行任务的机制,对于java而言,一个程序中可以并发的执行多个线程,这些线程可以在多处理器系统上同时运行。当程序作为一个应用程序运行时,java解释器为main()方法启动一个线程。2.并行与并发:(1)并发:在单处理器系...
分类:
编程语言 时间:
2015-03-15 16:35:40
阅读次数:
171