笔记一:一些基础

来源:互联网 发布:不用appleid下载软件 编辑:程序博客网 时间:2024/06/05 16:26
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();
})

0 0
原创粉丝点击