2019独角兽企业重金招聘Python工程师标准>>>

1.简述并区分程序、进程和线程三个概念。

程序是为完成特定任务、用某种语言编写的一组指令的集合。指一段静态的代码。
进程是程序的一次执行过程,是系统进行调度和资源分配的一个独立单位。

线程是比进程更小的执行单位。
一个进程在其执行过程中,可以产生多个线程,形成多条执行线索。
每个线程也有它自身的产生、存在和消亡的过程,也是一个动态的概念。
一个线程有它自己的入口和出口,以及一个顺序执行的序列
线程不能独立存在,必须存在于进程中。
线程 — 轻量级的进程

2.线程有哪几个基本的状态?Java中线程调度遵循何种原则?

答:线程与进程都是顺序执行的指令序列,但线程和进程不同。对于进程来说,子进程与父进程有不同的代码和数据空间;但是多个线程则共享数据空间,每个线程都有自己的执行堆栈和程序计数器作为其执行的上下文。线程的基本状态有新建、就绪、运行、阻塞、死亡。线程调度安照线程的优先级来调度线程的执行,具有高优先级的线程会在较低优先级的线程之前得到执行。同时线程的调度是抢先式的。

3.实现多线程可以用哪两种基本方法?将这两种方法进行比较。

第一种方法是通过实现Runnable接口实现,第二种方法是通过继承Thread类,

使用Runnable方式可以实现两条线程交替运行(注:不是绝对的交替),而用Thread无法实现。

转载于:https://my.oschina.net/crooner/blog/655964

java的多线程机制(文字描述区别)相关推荐

  1. Java的多线程机制系列:(四)不得不提的volatile及指令重排序(happen-before)

    一.不得不提的volatile volatile是个很老的关键字,几乎伴随着JDK的诞生而诞生,我们都知道这个关键字,但又不太清楚什么时候会使用它:我们在JDK及开源框架中随处可见这个关键字,但并发专 ...

  2. 《Java程序设计》实验报告——Java的多线程机制

    浙江理工大学 <Java程序设计>  实验报告  20 19-20 20学年第 1学期      学  院 信息学院 班  级 计算机科学与技术18(3) 姓  名 申屠志刚 学  号 2 ...

  3. java的多线程机制_Java多线程开发(一)| 基本的线程机制

    0. 前言 Java 为了实现跨平台,在语言层面上实现了多线程.我们只需要熟悉 Java 这一套多线程机制就行了,比 C/C++ 要容易多了. 1. 定义任务 我们编写程序,最终是为了完成特定的任务. ...

  4. java实验多线程机制_使用Java多线程的同步机制编写应用程序 PDF 下载

    使用Java多线程的同步机制编写应用程序 PDF 下载 本站整理下载: 相关截图: 主要内容: 一. 实验名称 使用Java多线程的同步机制编写应用程序 二. 实验目的及要求 1.理解并行/并发的概念 ...

  5. java实验多线程机制_JAVA 多线程机制(一)

    PS:又开始忙叨JAVA了..前一阵子搞定了HTML+CSS,要开始写实验室的界面了,真没劲...博客到时候再更新吧! 先更新JAVA的吧... 多线程(一) 主要内容 1.JAVA中的线程 2.用T ...

  6. 写缓存java,编写线程安全的Java缓存读写机制 (原创)

    一种习以为常的缓存写法: IF value in cached THEN return value from cache ELSE compute value save value in cache ...

  7. 浅谈Java多线程机制

    浅谈Java多线程机制 (-----文中重点信息将用红色字体凸显-----) 一.话题导入 在开始简述Java多线程机制之前,我不得不吐槽一下我国糟糕的IT界技术分享氛围和不给力的互联网技术解答深度. ...

  8. java显示多个地区时钟_妙用Java多线程机制实现多个时区时钟显示

    妙用Java多线程机制实现多个时区时钟显示 [摘要]在许多公共场合下,需要提供时钟显示,如机场.火车站.汽车站.酒店等,特别是一些需要接待外宾的场所,处理显示本地区时间以外还必须显示其他时区时间.本文 ...

  9. 【Java之多线程(二)】(***重要***)Java多线程中常见方法的区别,如object.wait()和Thread.sleep()的区别等

    1.Java中Thread和Runnable的区别??? 区别: 在程序开发中只要是多线程肯定永远以实现Runnable接口为主,因为实现Runnable接口相比继承Thread类有如下好处: 避免点 ...

最新文章

  1. vb.net 当前计算机用户,用VB写的一个组件,实现添加系统用户,并添加到指定组-.NET教程,VB.Net语言...
  2. php 怎么分布式,php分布式怎么部署
  3. android读取excel数据库,Android 读取Excel数据并保存在本地数据库
  4. 算法导论9.2-3习题解答(寻找第i小的数)
  5. 盘点2021:数据中心行业迎来转折点
  6. 转:HTTP请求(GET、POST和soap区别)和响应
  7. 民间借贷利息多少才合法?
  8. Android源码下载(ubuntu12.04(amd64))
  9. C语言指针变量--图示易懂
  10. VS 2005 2008 项目模板丢失问题
  11. Linux 安装python 模块及库
  12. for_else,break——python小练
  13. cad解除块的快捷命令_cad退出块编辑_cad常用快捷键命令表_cad打印快捷键
  14. 计算机网络16进制地址,计算机内存地址和为什么用16进制?
  15. IPFS windos 搭建
  16. 第二十九课: 斯涅尔定律、折射及全反射
  17. zookeeper的应用和原理
  18. HTTP协议Response
  19. SVN管理文件的步骤
  20. CmakeList中加入OpenCV编译项

热门文章

  1. c语言割线法解非线性方程,用割线法解非线性方程组.doc
  2. 服务器用netstat卡_PHP安全:服务器端口安全
  3. ffmpeg基础流程:音频处理
  4. Windows下链接boost库及应用实例
  5. os x php,OS X 安装php7.0
  6. 微型计算机原理与接口技术 王建国,微型计算机原理与接口技术课后习题答案及部分定义总结(王建国主编)...
  7. Pandas 读写数据
  8. C语言转义字符介绍和示例
  9. 太阳的光和灯光有什么区别_防蓝光眼镜的原理是什么,为什么这么多人用?
  10. Project Pacific的第一次接触(转)