一、基本概念

  1. 程序是一段静态的代码,它是应用程序执行的蓝本。
  2. 进程是程序的一次动态执行,它对应了从代码加载、执行至执行完毕的一个完整过程。
  3. 操作系统为每个进程分配一段独立的内存空间和系统资源,包括:代码数据以及堆栈等资源。每一个进程的内部数据和状态都是完全独立的。
  4. 多任务操作系统中,进程切换对CPU资源消耗较大。
  5. 多线程是进程执行过程中产生的多条执行线索。
  6. 线程是比进程执行更小的单位。
  7. 线程不能独立存在,必须存在于进程中,同一进程的各线程间共享进程空间的数据。
  8. 每个线程有它自身的产生、存在和消亡的过程,是一个动态的概念。
  9. 多线程意味着一个程序的多行语句可以看上去几乎在同一时间内同时运行。
  10. 线程创建、销毁和切换的负荷远小于进程,又称为轻量级进程(lightweight process)。

二、线程的中断

  1. 当线程的run方法执行方法体中最后一条语句后,并经由执行return语句返回时,或者出现了在方法中没有捕获的异常时,线程将终止,让出CPU使用权。
  2. 调用interrupt()方法也可终止线程。interrupt()方法不仅可中断正在运行的线程,而且也能中断处于blocked状态的线程,此时interrupt()方法会抛出一个InterruptedException异常。
  3. Java提供了几个用于测试线程是否被中断的方法。

三、线程的状态

  1. 通过各线程的状态变换,可以控制各个线程轮流使用CPU,体现多线程的并行性特征。
  2. 线程一共有如下6种状态:
  • New (新建)
  • Runnable (可运行)
  • Blocked (被阻塞)
  • Waiting (等待)
  • Timed waiting (计时等待)
  • Terminated (被终止)

四、面向对象程序设计课程学习进度条

周次 (阅读/编写)代码的行数 发布博客量/评论博客数量 课堂/课余学习时间(小时) 最满意的编程任务
第一周 20/7 1/1 6/4 编写Hello world程序
第二周 38/20 1/1 6/5 实验二 任务三
第三周 50/30 1/1 6/7 实验三
第四周 58/46 1/1 6/5 编写输出N位数各位数字,及求和
第五周 67/53 1/1 6/6 类的定义与重载
第六周 71/60 1/1 6/4 接口
第八周 80/66 1/1 6/3 Lamdba表达式
第九周  85/60  1/1  6/2  ID的操作
第十周 121/80 1/1 6/2 实验九
第十一周 120/84 1/1 6/2 实验十
第十二周 131/90 1/1 6/2 实验十一
第十三周 130/100 1/1 6/2 实验十二
第十四周 120/90 1/1 6/2 实验十三
第十五周 124/90 1/1 6/2 实验十四
第十六周 130/80 1/1 6/2 实验十四
第十七周 130/90 1/ 6/2 并发
......        
累计 1545/959 17/16 96/52  

转载于:https://www.cnblogs.com/rhq-java/p/8053203.html

201671010128 2017-12-17《Java程序设计》之并发相关推荐

  1. 20172319 2018.10.12《Java程序设计教程》第6周课堂实践(补写博客)

    20172319 2018.10.12 <Java程序设计教程>第6周课堂测验 课程:<程序设计与数据结构> 班级:1723 学生:唐才铭 学号:20172319 指导老师:王 ...

  2. 2017.12.17笔记-关于角色和相机的控制

    利用刚体的velocity进行移动,缺点:只能以世界坐标轴进行移动,暂时没发现velocity下用局部坐标系移动的方法: void VMove(){if (Input.GetAxisRaw(" ...

  3. Java模式设计卖电脑实验报告_20145310《Java程序设计》第2次实验报告

    20145310<Java程序设计>第2次实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计 ...

  4. 2017 9月java答案_西安交通大学17年9月课程考试《Java语言程序设计》作业考核试题 (答案)...

    试卷总分:100    得分:0 一. 单选题 (共 25 道试题,共 50 分) 1.  设x为float型变量,y为double型变量,a为int型变量,b为long型变量,c为char型变量,则 ...

  5. 《Java 2 实用教程》课程学习(17)——《Java 程序设计》实验指导书-校内实验教材

    ****大学 <Java程序设计> 实验指导书 编者:王* 潘** 肖* 杨** 主审:刘** ********学院信息科学系 2013年1月9日 前  言 <Java 程序设计实验 ...

  6. win10 如何配置 java jdk1.8环境变量(2017.8.17 )jdk1.8.0_144

    win10 如何配置 java jdk 环境变量 2017.8.17 本篇还适用于 windows server 2012. windows server 2014+ 一.安装 下载 jdk 64位 ...

  7. 从 Java 12 到 Java 17 那些激动人心的新特性

    点击"终码一生",关注,置顶公众号 每日技术干货,第一时间送达! 2021 年 9 月,Oracle 发布了 Java 17,Java 的下一个长期支持版本.如果你在使用 Java ...

  8. java孙膑与庞涓_一个很难的数学问题(智力140以下勿进) 旧版Java程序设计Page97 3.12题 庞涓...

    一个很难的数学问题(智力140以下勿进) 旧版Java程序设计Page97 3.12题 庞涓 2016-08-23 0 0 0 暂无评分 其他 1 积分下载 如何获取积分? 一个很难的数学问题(智力1 ...

  9. 18计科专业《Java程序设计》教学大纲

    18计科专业<Java程序设计>教学大纲 课程代码: 适用专业:计算机科学与技术 执 笔 人: 审 核 人: 学分学时:2学分40学时 制订时间:2019年12月 一.课程定位 本课程是一 ...

  10. HDU 6114 Chess 【组合数】(2017百度之星程序设计大赛 - 初赛(B))

    Chess Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total Subm ...

最新文章

  1. android 调试
  2. 计算机扬天m400c联想,【联想扬天M参数】联想扬天M系列台式电脑参数-ZOL中关村在线...
  3. 论文浅尝 - ICML2020 | 对比图神经网络解释器
  4. Java问题集锦--The type StringEscapeUtils is deprecated
  5. linux下Mariadb的二进制安装
  6. 滴滴图像技术团队招聘计算机视觉工程师和专家
  7. springboot内置tomcat,会和Oracle端口冲突,所以需要配置新的端口号
  8. Spring @Scheduled定时任务调度配置的详解
  9. “遗留代码是传奇!”
  10. android ImageSwitcher案例
  11. 2. Vue基础语法
  12. VBA实战技巧精粹010:如何快速选定工作表及Option Base 1
  13. 推荐给java新手的JAVA零基础入门书籍
  14. matlab页面背景颜色改变为黑底白字
  15. python哥德巴赫猜想
  16. Flink:flink问题总结
  17. Data()笔记之getDate()的基本用法
  18. 用python爬取微博评论对鹿晗、关晓彤微博进行情感分析
  19. 【unity】动画状态机中Transition的settings两段动画如何设置?
  20. 互联网巨头的人工智能野心,你看懂了吗?

热门文章

  1. 程序员弃码投中医?还做成了不错的生意! | 极客视频
  2. 连按 5 次 Shift 重改 CMD 和密码并重启电脑,这个漏洞你不能不知道!
  3. 滴滴信控系统开放试用  鼓励行业人员进行更广泛交通研究
  4. 【Rocket MQ】RocketMQ4.2.0 和 spring boot的结合使用,实现分布式事务
  5. 11.8. DOMDocument
  6. jQuery 图片高亮显示
  7. 实现 Java 多线程并发控制框架
  8. 吴恩达机器学习笔记-梯度下降
  9. 索引和长度必须引用该字符串内的位置--ArgumentOutOfRangeException
  10. 全美国的数据中心到底消耗了多少能源