ElapsedTicks、ElapsedMilliseconds、Elapsed.Milliseconds 和 Elapsed.TotalMilliseconds 之间的区别? (C#)

2023-12-30

我对这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)返回自启动以来经过的整数和小数毫秒总数

例如停在 1.23456 秒的秒表将在此属性中返回 1234.56。看时间跨度.TotalMilliseconds http://msdn.microsoft.com/en-us/library/system.timespan.totalmilliseconds.aspx on MSDN

Elapsed.Milliseconds (int)返回当前秒的整数毫秒数

例如1.234 秒的秒表将在此属性中返回 234。看时间跨度.毫秒 http://msdn.microsoft.com/en-us/library/system.timespan.milliseconds.aspx

ElapsedTicks(长整型)返回自秒表开始以来的刻度。

在原始问题的上下文中,与秒表类相关,ElapsedTicks是经过的刻度数。蜱发生率Stopwatch.Frequency,因此,要计算经过的秒数,请计算:numSeconds = stopwatch.ElapsedTicks / Stopwatch.Frequency.

旧答案将刻度定义为 100 纳秒周期的数量,这在 DateTime 类的上下文中是正确的,但在 Stopwatch 类的上下文中是不正确的。看秒表.ElapsedTicks http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.elapsedticks.aspx在 MSDN 上。

ElapsedMilliseconds返回最接近的整毫秒的四舍五入数字,因此这可能缺乏精度Elapsed.TotalMilliseconds财产可以给予。

Elapsed.TotalMilliseconds is a double可以将执行时间返回到部分毫秒,同时ElapsedMilliseconds is Int64。例如在此属性中,0.0007 毫秒的秒表将返回 0,或者 1234.56 毫秒将返回 1234。所以为了精度总是使用Elapsed.TotalMilliseconds.

See MSDN 上的 Stopwatch.ElapsedMilliseconds http://msdn.microsoft.com/en-us/library/system.diagnostics.stopwatch.elapsedmilliseconds.aspx为了澄清。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ElapsedTicks、ElapsedMilliseconds、Elapsed.Milliseconds 和 Elapsed.TotalMilliseconds 之间的区别? (C#) 的相关文章

随机推荐

  • 退出无限循环? [复制]

    这个问题在这里已经有答案了 当我输入非整数时 我会进入无限循环 我如何解决它 这是我的代码 def inputInt integer while True try result int integer except ValueError p
  • 将 Java 8 与 LibGDX 结合使用

    我正在使用 LibGDX 用 Ja va 编写一个游戏 仅desktop作为目标平台 我刚刚创建了一个新的 LibGDX 项目 并向其中导入了一些现有代码 但现在出现了一些错误 具体来说 使用diamond operator 例如这行代码
  • 设置 pandas 图的图例位置

    我知道如何设置 matplotlib 图的图例位置plt legend loc lower left 但是 我正在用 pandas 方法进行绘图df plot 并需要将图例位置设置为 左下 有谁知道该怎么做 编辑 我实际上正在寻找一种通过
  • 我们如何在 Ionic App 中实现 SignalR?

    我制作了一个应用程序 可以向已注册该应用程序 Ionic Angular 的用户发送消息 它从数据库 SQL Server C API 获取所有消息并在消息框中打印出来 这很好 但是当我们向正在交谈的人发送消息时 该人在不刷新页面的情况下不
  • 在 Rails 中,如何在 i18n 语言环境文件中指定默认 flash 消息

    我知道 i18n 语言环境文件中有一些预设结构 以便 Rails 自动提取值 例如 如果您想为新记录设置默认提交按钮文本 config locales en yml en helpers submit create Create model
  • MySQL表可以存储的最大记录数是多少?

    MySQL MyISAM 表可以存储多少条记录 InnoDB可以有多少个 您无法按记录数进行计数 因为您的表可能包含只有几个 int 字段的非常短的记录 或者您的记录可能非常长且包含数百个字段 因此必须以表的文件大小来衡量 对于 MYSQL
  • 由不同操作成功触发的 Github Action

    我试图在成功运行不同的操作后触发 Github 操作来运行 这两个工作流程是 单元测试操作 首先运行 并且应该触发下面的 后续测试 操作 name unit tests on push branches jobs build runs on
  • 我正在用 microsoft Visual Studio 做我的 C++ 作业,我注意到一些不寻常的事情 [重复]

    这个问题在这里已经有答案了 当我尝试获取动态数组中插槽的数据时 出现异常 但是如果我使用不同的编译器 例如在线编译器 运行相同的代码 https www onlinegdb com online c compiler https www o
  • 如何绘制 z = f(x, y) 的平滑二维彩色图

    我正在尝试绘制二维现场数据使用 matplotlib 所以基本上我想要类似的东西 在我的实际情况中 我将数据存储在硬盘驱动器上的文件中 然而 为了简单起见 请考虑函数 z f x y 我想要一个平滑的二维图 其中 z 使用颜色可视化 我使用
  • 如何使用 JQuery 和跨站点脚本编写 ajax?

    我遇到一个问题 我必须从这里获取 json http templodasdeusas com br game srv game php srv home http templodasdeusas com br game srv game p
  • 使用属性 XmlSerialize 自定义集合

    我有一个简单的类 它继承自 Collection 并添加了几个属性 我需要将此类序列化为 XML 但 XMLSerializer 会忽略我的附加属性 我认为这是因为 XMLSerializer 对 ICollection 和 IEnumer
  • 在 C++ 中打印完整的回溯

    我想以与 gdb 中类似的格式从 Linux 中的 C 程序转储回溯 我尝试使用 backtrace 和 backtrace symbols 函数来实现此目的 这些返回的函数名称和偏移量 我可以使用 cxa demangle 函数来获取可读
  • 如何通过按按钮关闭 Tkinter 窗口?

    编写一个带有标签的 GUI 应用程序 Good bye 当 的时候Button单击后 窗口关闭 到目前为止 这是我的代码 但它不起作用 谁能帮我解决我的代码吗 from Tkinter import window Tk def close
  • 通用铸造

    我怀疑答案是否定的 但是是否可以在 C NET v2 0 中执行类似的操作 class Converter
  • 在参数中设置symfony缓存目录

    我正在为 Symfony 应用程序构建 docker 环境 我每个应用程序都有一个容器 其中附加了一个仅用于链接到应用程序服务器的 Web 根数据的容器 作为基础设施安全强化的一部分 这些数据容器被设置为只读 以防止任何远程代码攻击 每个应
  • 如何使用 Java Scanner 测试空行?

    我期待使用扫描仪进行输入 直到没有任何内容 即当用户输入空行时 我该如何实现这一目标 I tried while scanner hasNext process input 但这会让我陷入循环 这是一个方法 Scanner keyboard
  • 如何覆盖 Angular Material 2 日期选择器的模板

    我需要修改 Angular 2 材质日期选择器的模板 它的模板在 angular material esm5 datepicker es5 js 中定义的几个内部组件中声明 我可以直接在节点包中修改模板 但是更新时它会被覆盖 我可以看到这种
  • Heroku 进程以状态 0 退出,但其 dyno 仍然“崩溃”

    我有一个用 ruby 编写的报废脚本 在工作台内的 Heroku 上运行 即使脚本运行顺利并以状态 0 退出 heroku 仍然告诉我测功机崩溃了 2016 12 13T00 59 10 695566 00 00 heroku spider
  • Python 可以用于客户端 Web 开发吗? [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • ElapsedTicks、ElapsedMilliseconds、Elapsed.Milliseconds 和 Elapsed.TotalMilliseconds 之间的区别? (C#)

    我对这4个完全感到困惑 ElapsedMilliseconds long ElapsedTicks long Elapsed TotalMilliseconds double 和 Elapsed Milliseconds int 之间有什么