.NET DynamicMethod线程安全吗?

时间:2009-10-22 06:39:56

标签: .net thread-safety cil

如果我用ILGenerator编写DynamicMethod并且我输出的代码是线程安全的,那么生成的委托是线程安全的吗?

我担心的是IL在方法第一次运行时被编译。如果确实如果某个其他线程在编译时尝试运行该委托会发生什么呢?

1 个答案:

答案 0 :(得分:3)

与标准代表没有任何区别。它们在某处都显示为MSILJIT在需要时编译它们。

一旦你以委托形式获得它,它就是你可以调用的代码体。这就是你真正需要知道的。您正在运行的.NET(Rotor,Mono,Microsoft one)的实现应该可以保护您免受任何关于此的考虑,否则它是实现中的错误。