首页
题库
面试
求职
学习
竞赛
More+
所有博客
搜索面经/职位/试题/公司
搜索
我要招人
去企业版
登录 / 注册
首页
>
试题广场
>
多线程是什么?
[问答题]
请说说多线程是什么?
查看答案及解析
添加笔记
求解答(0)
邀请回答
收藏(145)
分享
纠错
14个回答
添加回答
0
西瓜同学🏀
同步完成多项项目,而不是为了提高运行效率; 是为了提高资源使用率,从而提高系统的效率
编辑于 2019-04-25 20:17:56
回复(0)
更多回答
10
遥遥星空
进程是运行中的程序,线程是进程的内部的一个执行序列 。 进程是资源分配的单元,线程是执行行单元 。 进程间切换代价大,线程间切换代价小 。 进程拥有资源多,线程拥有资源少 。 多个线程共享进程的资源 。
发表于 2019-02-13 14:28:29
回复(0)
3
飞哦!
一个程序内部可以同时实现多个操作吧,进程是程序,程序里的功能就是多线程,系统只给程序进程分配资源,而不会给程序功能线程分配资源,另外系统只会在同一时间内执行一个进程,所以说会产生多个线程抢占资源和抢占执行权的问题,由此会延伸出资源分配和执行权的分配,解决方式是人为的通过一些手段控制线程,锁这些都是为了让程序能完美的执行,程序能按预想的设计运行并得到结果
发表于 2019-02-13 16:21:20
回复(0)
2
Gaoyuer
最开始,线程只是用于分配单个处理器的处理时间的一种工具。但假如操作系统本身支持多个处理器,那么每个线程都可分配给一个不同的处理器,真正进入“并行运算”状态。从程序设计语言的角度看,多线程操作最有价值的特性之一就是程序员不必关心到底使用了多少个处理器。程序在逻辑意义上被分割为数个线程;假如机器本身安装了多个处理器,那么程序会运行得更快,毋需作出任何特殊的调校。根据前面的论述,大家可能感觉线程处理非常简单。但必须注意一个问题:共享资源!如果有多个线程同时运行,而且它们试图访问相同的资源,就会遇到一个问题。举个例子来说,两个线程不能将信息同时发送给一台打印机。为解决这个问题,对那些可共享的资源来说(比如打印机),它们在使用期间必须进入锁定状态。所以一个线程可将资源锁定,在完成了它的任务后,再解开(释放)这个锁,使其他线程可以接着使用同样的资源。 多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。 一个采用了多线程技术的应用程序可以更好地利用系统资源。其主要优势在于充分利用了CPU的空闲时间片,可以用尽可能少的时间来对用户的要求做出响应,使得进程的整体运行效率得到较大提高,同时增强了应用程序的灵活性。更为重要的是,由于同一进程的所有线程是共享同一内存,所以不需要特殊的数据传送机制,不需要建立共享存储区或共享文件,从而使得不同任务之间的协调操作与运行、数据的交互、资源的分配等问题更加易于解决。
发表于 2019-04-25 18:43:54
回复(1)
0
TiAmo_9955
如果程序只有一条执行路径,这就是单线程;相反如果程序有多条路径,那么就是多线程
发表于 2019-05-02 21:24:06
回复(0)
0
茹(๑•.•๑)
多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。
发表于 2019-04-25 19:09:01
回复(0)
0
Soul~
最开始,线程只是用于分配单个处理器的处理时间的一种工具。但假如操作系统本身支持多个处理器,那么每个线程都可分配给一个不同的处理器,真正进入“并行运算”状态。从程序设计语言的角度看,多线程操作最有价值的特性之一就是程序员不必关心到底使用了多少个处理器。程序在逻辑意义上被分割为数个线程;假如机器本身安装了多个处理器,那么程序会运行得更快,毋需作出任何特殊的调校。根据前面的论述,大家可能感觉线程处理非常简单。但必须注意一个问题:共享资源!如果有多个线程同时运行,而且它们试图访问相同的资源,就会遇到一个问题。举个例子来说,两个线程不能将信息同时发送给一台打印机。为解决这个问题,对那些可共享的资源来说(比如打印机),它们在使用期间必须进入锁定状态。所以一个线程可将资源锁定,在完成了它的任务后,再解开(释放)这个锁,使其他线程可以接着使用同样的资源。 多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的。 一个采用了多线程技术的应用程序可以更好地利用系统资源。其主要优势在于充分利用了CPU的空闲时间片,可以用尽可能少的时间来对用户的要求做出响应,使得进程的整体运行效率得到较大提高,同时增强了应用程序的灵活性。更为重要的是,由于同一进程的所有线程是共享同一内存,所以不需要特殊的数据传送机制,不需要建立共享存储区或共享文件,从而使得不同任务之间的协调操作与运行、数据的交互、资源的分配等问题更加易于解决。
发表于 2019-04-25 18:47:24
回复(0)
0
一个好名字
多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的
发表于 2019-04-25 18:28:10
回复(0)
0
Ly~
Java多线程实现方式主要有三种:继承Thread类、实现Runnable接口、使用ExecutorService、Callable、Future实现有返回结果的多线程。其中前两种方式线程执行完后都没有返回值,只有最后一种是带返回值的。
发表于 2019-04-25 18:09:29
回复(0)
0
呀小裴
线程是进程的一个基本单位。多线程是为了同步完成多项任务,不是为了提高运行效率,而是为了提高资源使用效率来提高系统的效率。线程是在同一时间需要完成多项任务的时候实现的
发表于 2019-04-25 17:35:39
回复(0)
0
蚌埠住了的钝角很想找对象
线程是cpu调度的最小执行单元
发表于 2019-03-20 09:08:27
回复(0)
0
易白先生
一个进程(应用程序)并发执行多个线程(任务)!
发表于 2019-03-01 17:59:05
回复(0)
0
踟蹰千年
一个进程运行时产生多个进程,分为并发和并行
发表于 2019-01-14 22:44:52
回复(0)
0
祝浩
指软件或者硬件同时执行多个线程并发发技术!
发表于 2018-12-22 15:56:38
回复(0)
这道题你会答吗?花几分钟告诉大家答案吧!
提交观点
问题信息
测试工程师
Java
上传者:
小小
难度:
14条回答
145收藏
1975浏览
热门推荐
相关试题
3.下列关于表中西部省市区2006...
资料分析
言语理解与表达
资料分析
评论
(1)
Mysql中表student_in...
数据库
SQL
评论
(1)
SQL中,下列涉及空值的操作不正确...
SQL
评论
(0)
MySQL中执行 SELECT I...
SQL
评论
(2)
下列表达式的值为True的是( )
Python
评论
(1)
扫描二维码,关注牛客网
意见反馈
下载牛客APP,随时随地刷题