- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我对这 4 个完全困惑。ElapsedMilliseconds (long)、ElapsedTicks (long)、Elapsed.TotalMilliseconds (double) 和 Elapsed.Milliseconds (int) 之间有什么区别?
我有一个函数
{
Stopwatch sw = new Stopwatch();
sw.Start();
MyTimeConsumingAction();
sw.Stop();
sw.//what?
}
如何从 Stopwatch 对象的 elapsed 属性中获取我长时间运行的进程消耗的正确时间(以毫秒为单位)?
编辑:我尝试了 msdn 文档,但那里没有任何详细信息..
最佳答案
Elapsed.TotalMilliseconds (double)
returns the total number of whole and fractional milliseconds elapsed since inception
例如停在 1.23456 秒的秒表将在此属性中返回 1234.56。请参阅 MSDN 上的 TimeSpan.TotalMilliseconds
Elapsed.Milliseconds (int)
returns the number of whole milliseconds in the current second
例如秒表在 1.234 秒时会在此属性中返回 234。见 TimeSpan.Milliseconds
ElapsedTicks (long) returns the ticks since start of the stopwatch.
在原始问题的上下文中,与 Stopwatch 类有关,ElapsedTicks
是经过的滴答数。滴答以 Stopwatch.Frequency
的速率发生,因此,要计算经过的秒数,请计算:numSeconds = stopwatch.ElapsedTicks/Stopwatch.Frequency
。
旧答案将滴答定义为 100 纳秒周期的数量,这在 DateTime 类的上下文中是正确的,但在 Stopwatch 类的上下文中是不正确的。请参阅 MSDN 上的 Stopwatch.ElapsedTicks。
ElapsedMilliseconds
returns a rounded number to the nearest full millisecond, so this might lack precisionElapsed.TotalMilliseconds
property can give.
Elapsed.TotalMilliseconds
是一个 double
可以将执行时间返回到部分毫秒,而 ElapsedMilliseconds
是 Int64
.例如在此属性中,0.0007 毫秒的秒表将返回 0,或 1234.56 毫秒将返回 1234。因此,为了精确起见,请始终使用 Elapsed.TotalMilliseconds
。
有关说明,请参阅 Stopwatch.ElapsedMilliseconds on MSDN。
关于c# - ElapsedTicks、ElapsedMilliseconds、Elapsed.Milliseconds 和 Elapsed.TotalMilliseconds 之间的区别? (C#),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8894425/
我对这 4 个完全困惑。ElapsedMilliseconds (long)、ElapsedTicks (long)、Elapsed.TotalMilliseconds (double) 和 Elap
我已经包含了 System.Timers 包,但是当我输入时: Timer.Elapsed; //its not working, the property elapsed is just not t
我有一个要使用的 System.Timers.Timer 对象,但我不希望绑定(bind)到 Timer 的处理干扰普通到高优先级线程。换句话说,我想说我想每 5 秒处理一次 X,只要没有其他东西在运
在我的应用程序中,有时我需要手动调用我的计时器。 我试过以下方法: int originalInterval = t.Interval; t.Interval = 0; t.Interval = or
我有一个页面,我在其中触发 ajax 请求并在用户按下按钮后的前 6 秒内显示加载标志: var startTime=(new Date).getTime(); function
我想为每个对象分配不同的计时器。 每个对象都包含 Timer 作为类成员。 这就是我尝试过的: private void EntityTimeElapsed(object sender, MyEnti
我正在使用 Windows 窗体。我正在使用 System.Timers.Timer 。虽然我用 timer.Stop() 停止了计时器,但它仍然会多一点。我放了一些 bool 变量来防止这种情况但没
我正在使用 LabVieW 计算电路的电容。我试图得到它两端的电压达到2.5V后的时间。我提供5V电源。我使用了逻辑运算符并将其连接到耗时组件的重置。但随着时间重置,我得到了零。我想知道实际耗时。 电
我必须在大学做一个小作业: 我有一台运行“n”个独立服务的服务器。过去所有这些服务都是同时启动的。每个服务“i”都会在一定时间“s[i]”(以秒为单位)后将“b[i]”行写入服务器上的日志文件。输入由
我有这个投票类 class Poll { public string question { get; set; } public Timer pollTimer { get; set;
以下类来自 .Net Windows 服务。 DoSomeDatabaseStuff 方法在第一次启动时需要 10 分钟,但当时间过去后,不会再次调用此方法。 public class Test {
Timers.Timer 来创建秒表。我使用 Timer.Elapsed 来处理在特定时间后显示时间的事件。我给定时器间隔 1 并启用为真。我还将 AutoReset 设置为 true。但问题是事件只
我有一个计时器,我想知道它是否有效以测试它是否是计时器第一次引发经过的事件(我想在第一次引发经过的事件后更改 Interval 属性) _timer = new Timer(1000)
我有一个 Backgroundworker,它从数据库中收集大量数据。我想在线程上设置一个超时限制,这样如果它在设定的时间后没有返回结果,进程就会被取消。 我在启动 BackgroundWorker
ElapsedTicks & Elapsed.Ticks 是 Stopwatch 的属性,我觉得应该是一样的。如果它们相同,为什么它们应该给出不同的输出? 代码: Stopwatch spwt = S
我正在使用 Windows 窗体应用程序并拥有一个使用 System.Timers.Timer 定期检查数据库数据的管理器类。 如何将计时器 Elapsed 事件处理程序中发生的异常传递给主应用程序?
我正在使用 System.Timers.Timer 类创建一个带有 Timer.Elapsed 事件的计时器。问题是 Timer.Elapsed 事件仅在间隔时间过去后才第一次触发。 有没有办法在启动
我有一个获取音频的脚本。我想将该频率与歌曲的确切时间联系起来。我可以获取 webkitAudioContext currentTime 属性,但这并不准确,因为它在歌曲开始之前将声音保存在缓冲区中时开
我有下面的代码来获取当前时间戳并计算最后时间戳的耗时(以分钟为单位),我想知道是否可以进一步针对生产进行优化 public static Timestamp getTimestamp() {
我正在尝试获取在响应式(Reactive)编程中从 Redis 读取数据的执行时间,在查找文档时我可以看到 elapsed() 方法将执行相同的操作并实现如下代码。 Flux.fromIterable
我是一名优秀的程序员,十分优秀!