什么是多线程

什么是多线程试题:
什么是多线程
答案:
多线程是指从软件或者硬件上实现多个线程并发执行的技术 。
【相关阅读】[由www.smesun.com整理]
多线程 英语:multithreading是指从软件或者硬件上实现多个线程并发执行的技术 。具有多线程潜力的计算机因有硬件支持而能够在同一时光执行多于一个线程进而提升整体处理性能 。具有这种潜力的系统包括对称多处理机、多核心处理器以及芯片级多处理 Chip-levelmultithreading或同时多线程 Simultaneousmultithreading处理器 。在一个程序中这些独立运行的程序片段叫作“线程” Thread利用它编程的概念就叫作“多线程处理 Multithreading” 。具有多线程潜力的计算机因有硬件支持而能够在同一时光执行多于一个线程 台湾译作“执行绪”进而提升整体处理性能 。
在计算机编程中一个基本的概念就是同时对多个 任务加以控制 。许多 程序设计问题都要求程序能够停下手
头的工作改为处理其他一些问题再回到主 进程 。能够透过多种途径到达这个目的 。最开始的时候那些掌握机器低级语言的 程序员编写一些“中断服务例程”主 进程的暂停是透过 硬件级的中断实现的 。尽管这是一种有用的方法但编出的 程序很难移植由此造成了另一类的代价高昂问题 。中断对那些实时性很强的 任务来说是很有必要的 。但对于其他许多问题只要求将问题划分进入独立运行的 程序片断中使整个程序能更迅速地响应用户的请求 。
最开始线程只是用于分配单个处理器的处理时光的一种工具 。但假如 操作系统本身支持多个处理器那么每个线程都可分配给一个不一样的处理器真正进入“并行运算”状态 。从 程序设计语言的角度看多线程操作最有价值的特性之一就是 程序员不必关心到底使用了多少个处理器 。程序在逻辑好处上被分割为数个线程;假如机器本身安装了多个处理器那么程序会运行得更快毋需作出任何特殊的调校 。根据前面的论述大家可能感觉线程处理十分简单 。但务必注意一个问题:共享资源!如果有多个线程同时运行而且它们试图访问相同的资源就会遇到一个问题 。举个例子来说两个线程不能将信息同时发送给一台 打印机 。为解决这个问题对那些可共享的资源来说 比如 打印机它们在使用期间务必进入锁定状态 。所以一个线程可将资源锁定在完成了它的 任务后再解开 释放这个锁使其他线程能够之后使用同样的资源 。
多线程是为了同步完成多项 任务不是为了提高运行效率而是为了提高 资源使用效率来提高系统的效率 。线程是在同一时光需要完成多项 任务的时候实现的 。
最简单的比喻多线程就像火车的每一节 车厢而进程则是火车 。车厢离开 火车是无法跑动的同理火车也不可能只有一节车厢 。多线程的出现就是为了提高效率 。同时它的出现也带来了一些问题 。