我正在尝试使用反射从程序集中挖掘信息,而我想知道的一件事(假设它实际上是要知道的)是一个字段是否易失。换句话说,如果我有以下课程
public class Test {
public volatile int Counter = 0;
}
有什么方法可以(通过反射)弄清楚该Test.Counter
领域确实是易变的?还是根本没有出口?
我正在尝试使用反射从程序集中挖掘信息,而我想知道的一件事(假设它实际上是要知道的)是一个字段是否易失。换句话说,如果我有以下课程
public class Test {
public volatile int Counter = 0;
}
有什么方法可以(通过反射)弄清楚该Test.Counter
领域确实是易变的?还是根本没有出口?
您可以使用以下GetRequiredCustomModifiers
方法:
var field = typeof(Test).GetField("Counter");
bool isVolatile = field
.GetRequiredCustomModifiers()
.Any(x => x == typeof(IsVolatile));