1.同步保证原子性synchronized
几个简单的规则:
1.永远只在更新对象的成员变量的时候加锁
2.永远只对在访问有可能被更新的成员时变量加锁
3.永远不要再调用其他对象的方法时加锁【个人觉得其他对象应该自己保证】
几个常用方法:
join其实就是调用wait()
wait()和notify()需要在同步块中使用。进入同步块的永远是当前线程。
interrupt方法将中断标志设置为true,如果正在wait(),join();sleep()将抛异常
setDaemon(),当所有非后台进程结束的时候,JVM就会退出,并且立即结束这个线程。
4.进程与线程的区别
线程共享进程的底层资源,有竞争,所有有调度,资源有限嘛。
5.活跃对象,被动模式,混合模式
1)被动的系统,外界只能串行的来访问该对象。
2)活跃对象,对象功能强大,可以同时并发来访问该对象。例如分布式对象
3)JVM存在多线程,但是访问的对象共享一套底层资源。
6.几个关键问题:
1)安全性
2)活跃性
3)可重用性
4)性能
7.代码通畅以before/after模式组成
before();try{method();}finally{after()};
几种该模式的实现方式:
1).通过adapter
2).通过继承
3).通过回调方式
invock(new callback(){
before();
method();
after();
})
分享到:
相关推荐
适合初学者和找工作前查漏补缺的第一阶段java基础学习笔记 使用说明: ①资料内容是看传智播客视频整理的他们的上课文档+总结和自己查漏补缺以及重要知识点,都已经分类好了; ②笔记是用印象笔记工具写的,所以...
这是前端基础第一天学习的笔记,视频,文档,练习题所有的东西,文件太大传输不上来,需要把种子传上去,大家再用µTorrent软件打开即可
C程序学习第一天学习笔记:使用虚拟机基础编译,进制转换,注意事项。
" Android Studio开发实战:从零基础到App上线读书笔记模板 " 本书是一部Android开发的实战教程,由浅入深、由基础到高级,带领读者一步一步走进App开发的神奇世界。全书共分为16章,前8章是基础部分,主要讲解...
【Java基础】 Java是一种广泛使用的面向对象的编程语言,由Sun Microsystems(现已被Oracle公司收购)于1995年发布。Java以其“一次编写,到处运行”的特性,成为跨平台应用开发的首选语言。Java的基础部分主要包括...
2020谷粒商城笔记资料,谷粒商城2020文档课件笔记+源代码(基础篇+高级篇) 谷粒商城2020文档课件笔记+源代码(基础篇+高级篇) 2020谷粒商城笔记资料(基础篇+高级篇) 尚硅谷谷粒商城笔记,很全。基础篇,高级篇...
一个java基础项目(学习笔记).zip一个java基础项目(学习笔记).zip一个java基础项目(学习笔记).zip一个java基础项目(学习笔记).zip一个java基础项目(学习笔记).zip一个java基础项目(学习笔记).zip一个java基础项目...
本学习笔记主要涵盖了Java的基础知识,包括面向对象、集合、IO流、多线程、反射与动态代理以及Java 8的新特性等方面,旨在帮助初学者或有经验的开发者巩固和提升Java编程技能。 1. 面向对象(OOP):Java的核心是...
读书笔记 类型: 课程学习 名称: 计算机应用基础 时间:2006.7.7 体裁:说明文 " 知识内容与结构 "备 注 " "一.知识整体结构层次1说明: " " "计算机基础知识 " " "计算机软件 (系统软件——操作系统) " " ...
linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础管理个人笔记linux基础...
本文档为java入门基础知识点,学习对象为有意向自学java基础的同学,文档格式为xml格式,下载使用XMIND工具浏览.
"Java基础的详细案例笔记"无疑是一份宝贵的资源,它涵盖了学习Java过程中最核心的概念和实战技巧。这份笔记可能是作者在学习过程中对每个关键知识点的理解与实践总结,对于自我学习或教学都是极具价值的。 首先,...
Java基础总结大全涵盖了Java编程语言的核心概念,从JVM、JRE和JDK的区别,到环境变量的设置,再到变量的定义和类型转换,深入浅出地讲解了Java的基础知识。 1. JVM、JRE和JDK: - JVM(Java Virtual Machine)是...
章节5:Python科学计算基础:NumPy模块 * NumPy模块简介 * 数组基础 * 数组操作 * 数组广播机制 * 数组索引进阶 * 数组读写 * 随机数组 * 结构数组 章节6:Python可视化:Matplotlib模块 * Matplotlib模块简介 * ...
Acwing 算法基础课超详细笔记 本资源摘要信息中,我们将对 Acwing 算法基础课进行详细笔记,涵盖快速排序、快速选择算法、归并排序、逆序对的数量和二分搜索等多个知识点。 快速排序 快速排序是一种基于分治的...
掌握一些基础的命令行操作对于任何想要精通Java或进行软件开发的程序员来说都是必不可少的。 #### ls命令 `ls` 命令是列出目录内容的最常用命令之一。它可以显示当前目录下的文件和文件夹,以及它们的权限、所有者...
一个源文件中不要定义同名的类 ">java基础 在命令行 控制台下的dos命令: 切换盘符 d: 进入某个目录 cd: 查看一个目录下有什么东西:dir 编译时 javac 源文件名 java 运行的时候 java 含有main方法的 类名 注意:不要写...
标题“助教的Tensorflow笔记2:Python语法串讲.pdf”提示了文档的内容是关于Python编程语言的基础语法讲解,这是学习Tensorflow和机器学习的重要基础。Tensorflow是Google开发的一个开源机器学习库,广泛用于各种...
总的来说,《红茶三杯的IE+NP+NA全套笔记》是一份全面且深入的网络技术学习资源,不仅覆盖了网络基础,还延伸到了高级主题,对于有志于在网络技术领域深造的人来说,是一份不可多得的参考资料。希望读者能够从中汲取...