当前位置:  开发笔记 > 编程语言 > 正文

Java的"同步"和C#的"锁定"之间有什么区别吗?

如何解决《Java的"同步"和C#的"锁定"之间有什么区别吗?》经验,为你挑选了2个好方法。

这两个关键字是否具有完全相同的效果,或者我应该注意哪些?



1> Keeg..:

根据这个站点:http://en.csharp-online.net/CSharp_FAQ:_What_is_the_difference_between_CSharp_lock_and_Java_synchronized,C#lock和Java synchronized代码块"语义相同",而对于方法,Java使用synchronizedC#使用属性:[MethodImpl(MethodImplOptions.Synchronized)].



2> Jon Skeet..:

Keeg发布的链接中没有涉及到一个有趣的区别:据我所知,在Java的Monitor.Enter和Monitor.Exit中没有用Java的等效方法调用,C#语句归结为.这意味着你不能做相当于Monitor.TryEnter的工作 - 当然java.util.concurrent.locks包(从1.5开始)有各种各样的锁具有更多的功能.lock

推荐阅读
携手相约幸福
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有