与System.DateTime.Now相比,使用Microsoft.VisualBasic.DateAndTime.Now有什么区别吗?
我似乎记得曾经读过一篇文章,说MS.VB命名空间仅用于旧式使用,并且比使用 native .net类要慢得多。
最佳答案
在某些情况下,使用VB namespace 的速度可能会较慢(由于增加的功能和/或灵活性,不是因为MS希望VB速度较慢)。
但是对于DateAndTime.Now,情况并非如此。这只是对DateTime.Now调用的包装。
我怀疑该调用将由JIT编译器内联,因此它不会使您的代码变慢(在为Release进行编译时)。
证明:这是DateAndTime中的IL。
.method public specialname static valuetype [mscorlib]System.DateTime get_Now() cil managed
{
.maxstack 1
.locals init (
[0] valuetype [mscorlib]System.DateTime time)
L_0000: call valuetype [mscorlib]System.DateTime [mscorlib]System.DateTime::get_Now()
L_0005: ret
}
这与以下内容完全相同:
Return DateTime.Now
关于vb.net - Microsoft.VisualBasic.Now与System.DateTime.Now,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3891295/