20165218 2017-2018-1 《Java程序设计》第8周学习总结

教材学习内容总结

第12章 java多线程机制

java中的线程

  • 计算机在任何给定时刻只能执行一个线程,多线程机制是指java虚拟机快速地切换线程,使他们轮流执行
  • Thread类及其子类的对象表示线程
  • 线程的一个生命周期有新建、运行、中断、死亡四个状态
  • setPriority(int grade)方法调整线程优先级

线程的常用方法

  • start() 只有新建状态的线程才可以调用
  • run() 没有具体内容,用户程序需要创建自己的Thread类的子类,重写run()方法;执行完毕后,线程死亡
  • sleep(int millsecond)调用使高优先级的线程暂时进入休眠;必须在try-catch中使用
  • isAlive() 线程处在新建和死亡状态时,该方法返回false,处在运行状态时,返回true
  • currentThread()返回正在使用CPU资源的线程
  • interrupt()用来“吵醒”调用了sleep方法的线程

线程同步

使用synchronized修饰的方法,需遵守同步机制:当一个线程A使用synchronized方法时,其它线程想要使用这个方法就必须等待,直到线程A使用完毕


协调同步的线程

  • wait()方法可以中断线程的执行,暂时让出CPU使用权
  • wait()方法必须用notifyAll()方法唤醒
  • wait()方法、notify()notifyAll()都是Object类中的final方法,不允许被重写

线程联合

//线程A在使用CPU资源的期间
B.join();

A立刻中断,直到线程B执行完毕


代码托管

(statistics.sh脚本的运行结果截图)

上周考试错题总结

  • 错题1

Connection是类名不是方法名

  • 错题2

  • ...

参考资料

《Java程序设计》第8周学习总结 20165218 2017-2018-1的更多相关文章

  1. 《Java程序设计》第九周学习总结 20165218 2017-2018-2

    20165218 2017-2018-2 <Java程序设计>第9周学习总结 教材学习内容总结 第13章 Java网络编程 URL类 位于java.net包,使用URL创建对象的应用程序称 ...

  2. 20165218 2017-2018-1 《Java程序设计》第一周学习总结

    20165218 2017-2018-1 <Java程序设计>第一周学习总结 教材学习内容总结 第一章.Java入门 1. Java特点 Java具有简单.面向对象.平台无关.多线程.动态 ...

  3. 20145213《Java程序设计》第九周学习总结

    20145213<Java程序设计>第九周学习总结 教材学习总结 "五一"假期过得太快,就像龙卷风.没有一点点防备,就与Java博客撞个满怀.在这个普天同庆的节日里,根 ...

  4. 20145213《Java程序设计》第二周学习总结

    20145213<Java程序设计>第二周学习总结 教材学习内容总结 本周娄老师给的任务是学习教材的第三章--基础语法.其实我觉得还蛮轻松的,因为在翻开厚重的书本,一股熟悉的气息扑面而来, ...

  5. 20145213《Java程序设计》第一周学习总结

    20145213<Java程序设计>第一周学习总结 教材学习内容总结 期待了一个寒假,终于见识到了神秘的娄老师和他的Java课.虽说算不上金风玉露一相逢,没有胜却人间无数也是情理之中,但娄 ...

  6. 21045308刘昊阳 《Java程序设计》第九周学习总结

    21045308刘昊阳 <Java程序设计>第九周学习总结 教材学习内容总结 第16章 整合数据库 16.1 JDBC入门 16.1.1 JDBC简介 数据库本身是个独立运行的应用程序 撰 ...

  7. 20145330孙文馨 《Java程序设计》第一周学习总结

    20145330孙文馨 <Java程序设计>第一周学习总结 教材学习内容总结 刚开始拿到这么厚一本书说没有压力是不可能的,开始从头看觉得很陌生进入不了状态,就稍微会有一点焦虑的感觉.于是就 ...

  8. 20145337 《Java程序设计》第九周学习总结

    20145337 <Java程序设计>第九周学习总结 教材学习内容总结 数据库本身是个独立运行的应用程序 撰写应用程序是利用通信协议对数据库进行指令交换,以进行数据的增删查找 JDBC可以 ...

  9. 20145337 《Java程序设计》第二周学习总结

    20145337 <Java程序设计>第二周学习总结 教材学习内容总结 Java可分基本类型与类类型: 基本类型分整数(short.int.long).字节(byte).浮点数(float ...

  10. 20145218《Java程序设计》第一周学习总结

    20145218 <Java程序设计>第一周学习总结 教材学习内容总结 今天下午看了Java学习的视频,感觉很是新奇,之前觉得Java学起来是艰难枯燥的,但通过第一章的学习觉得如果自己可以 ...

随机推荐

  1. Spark优化一则 - 减少Shuffle

    Spark优化一则 - 减少Shuffle 看了Spark Summit 2014的A Deeper Understanding of Spark Internals,视频(要***)详细讲解了Spa ...

  2. 基于MapReduce的(用户、物品、内容)的协同过滤推荐算法

    1.基于用户的协同过滤推荐算法 利用相似度矩阵*评分矩阵得到推荐列表 已经推荐过的置零 2.基于物品的协同过滤推荐算法 3.基于内容的推荐 算法思想:给用户推荐和他们之前喜欢的物品在内容上相似的物品 ...

  3. selenium自动化之稳定版本环境介绍

    大家都知道,目前selenium版本已经升级到3.0了,selenium3只是在selenium2的基础上做了一些调整,最明显的区别就是 selenium2对Firefox的支持最高只支持46及以下版 ...

  4. 第七章移动互联网与移动IP

    第七章移动互联网与移动IP 本章延续前几章节,对该章节内容进行归纳总结. 文章中的Why表示产生的背景,也就是说为什么会产生该技术,What表示该技术是什么,How表示该技术是如何使用的.以下将用字母 ...

  5. CentOS 下 MySQL 5.6 基于 RPM 的下载、安装、配置

    CentOS 下 MySQL 5.6 基于 RPM 的下载.安装.配置 系统: CentOS 7 x86_64 MySQL 版本: 5.6.40 安装方式: RPM 下载 下载地址 操作系统 选择 R ...

  6. Linux 安装Redis<单机版>(使用Mac远程访问)

    阅读本文需要先阅读安装Redis<准备> redis依赖 yum install gcc-c++ 解压 cd redis压缩包所在目录 tar -xvf redis-4.0.10.tar. ...

  7. fail-fast 机制 思考

    HashMap的迭代器(Iterator)是fail-fast迭代器,而Hashtable的enumerator迭代器不是fail-fast的. Iterator支持fail-fast机制,而Enum ...

  8. Matlab中 .' 的作用。

    Syntax B = A.' B = transpose(A)   Description B = A.' returns the nonconjugate transpose of A, that ...

  9. loadrunner socket协议问题归纳(4)---buffer接收变长和定长的数据

    测试场景:聊天系统 用户登录后,要先向服务器发送用户名,然后可以发送聊天信息,同时也可以接受聊天信息. 如果接受的字符为定长时,可以设定接受长度.recv buf2 66 #include " ...

  10. “Hello World!”团队第六周的第五次会议

    今天是我们团队“Hello World!”团队第六周召开的第五次会议.博客内容: 一.会议时间 二.会议地点 三.会议成员 四.会议内容 五.todo list 六.会议照片 七.燃尽图 八.代码 一 ...