使用Microsoft.VisualBasic.DateAndTime.Now与System.DateTime.Now之间有什么区别吗?
我似乎记得读过一些说MS.VB命名空间仅用于遗留用途的东西,并且比使用原生.net类慢得多.
GvS*_*GvS 10
在某些情况下,使用VB命名空间可能会更慢(因为增加了功能和/或灵活性,而不是因为MS希望VB更慢).
但是在DateAndTime.Now的情况下,情况并非如此.这只是对DateTime.Now调用的包装.
我怀疑调用是由JIT编译器内联的,所以它不会使你的代码变慢(当编译为Release时).
证明:这是来自DateAndTime.Now的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
}
Run Code Online (Sandbox Code Playgroud)
这完全相同:
Return DateTime.Now
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1591 次 |
| 最近记录: |