
在很多实际的多线程应用中,通常会有两个或多个线程需要对相同的对象进行共享访问。如果两个线程访问的对象,而且每一个都调用了一个会改变对象状态的方法,那会发生什么呢?可以想像,线程会相互倾轧。根据各个纯种访问数据的不同顺序,可能会产生腐蚀的对对象。这种情况称为竞争条件(race condition)。
为了避免多个线程对共享数据的腐蚀,必须学会如何对存取进行同步。
我觉得举什么例子啊之类的,可能会误导你,还是看专业的话比较好。我上面的话是从《Java核心技术第2卷》里面抄下来的。
下面是我的理解:
hashtable是用Synchronize修饰的,也就是同步的。而HashMap不是。
这就要求你在用多个线程访问Hashtable时,不需要自己为它实现同步,而HashMap 就必须为之提供外同步。
以上就是关于什么是程序的同步,怎样理解全部的内容,包括:什么是程序的同步,怎样理解、、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)