是我自己对java中并发编程的一点理解和总结,希望大家能够多多指点。。。。
1. 并发编程最重要的两点是:原子性和可见性。原子性是指一系列相关的操作要在一个原子的操作之下完成。如:read-update-write和check-then-do等。而可见性是指内存的可见性,根据Java的内存模型,每个线程都会有临时变量的一个拷贝,如果不进行同步,则当一个线程修改了某个变量,而另外一个线程极有可能看不到更新的值。本人觉得任何的并发问题,只要抓住这两点去考虑,那什么问题都可以迎刃而解。
2. 在进行并发的同步处理时,要清楚当前的线程操作究竟是使用哪个对象的锁。
3. 当组合对象或对某些对象添加同步操作时,可以考虑使用包装类的方式。
4. 应尽量使用Java5中同步包中的类(牛人写的...)。