同步就是串行使用一些资源.
1. 多线程中对共享、可变的数据进行同步.
对于函数中的局部变量没必要进行同步.
对于不可变数据,也没必要进行同步.
多线程中访问共享可变数据才有必要.
单个线程中可以使用synchronized,而且可以嵌套,但无意义.
同步最最安全,最保险的。而异步不安全,容易导致死锁,这样一个线程死掉就会导致整个
进程崩溃,但没有同步机制的存在,性能会有所提升。但是同步是需要付出代价的,每次调用同步方法时,都需要执行某个管理程序。
简单的说就是A线程使用加锁的资源,那么B线程请求该资源,那么必须等待A线程释放锁。即A线程执行完毕,B线程执行。但是异步线程不存在这样的问题!
|