猿问

你好,关于以下这个参数属性的作用是什么呢?有了解的么?

[MethodImpl(MethodImplOptions.Synchronized)]这个属性的作用是什么呢?

胡子哥哥
浏览 647回答 1
1回答

慕少森

MethodImplOptions 枚举定义如何实现某方法的详细信息。此枚举有一个 FlagsAttribute 属性,允许其成员值按位组合。命名空间:System.Runtime.CompilerServices程序集:mscorlib(在 mscorlib.dll 中)成员名称 说明由 .NET Compact Framework 支持 ForwardRef 指定声明该方法,但其实现在其他地方提供。由 .NET Compact Framework 支持 InternalCall 指定一个内部调用。内部调用是对在公共语言运行库本身内部实现的方法的调用。由 .NET Compact Framework 支持 NoInlining 指定此方法不能内联。由 .NET Compact Framework 支持 PreserveSig 指定此方法签名完全按声明的样子导出。由 .NET Compact Framework 支持 Synchronized 指定同时只能由一个线程执行该方法。静态方法锁定类型,而实例方法锁定实例。在任何实例函数中只能有一个线程执行,并且在任何类的静态函数中只能有一个线程执行。由 .NET Compact Framework 支持 Unmanaged 指定此方法是以非托管代码实现的。备注与 MethodImplAttribute 一起使用。使用按位“或”运算符指定多个 MethodImplOptions 值。Note注意实例或类型上的锁定(如同使用 Synchronized 标志一样)对于公共类型是不推荐使用的,其原因在于除了不是自己的代码的其他代码可对公共类型和实例采用锁定。这可能导致死锁或其他同步问题。
随时随地看视频慕课网APP
我要回答