使用高精度秒表StopWatch测试DateTime.Now的精度

news2024/11/25 6:30:17

StopWatch使用的命名空间:

using System.Diagnostics;

StopWatch的使用方法:

  1. 创建Stopwatch对象:stopwatch;
  1. stopwatch计时表开启:stopwatch.Start();
  1. stopwatch计时表关闭:stopwatch.Stop();
  1. 计算stopwatch.Stop()计时表从开启到关闭的总运行时间:
  • stopwatch.ElapsedTicks:返回长整型,用计时器刻度表示(微秒级别);

  • stopwatch.ElapsedMilliseconds:返回长整型,以毫秒为单位;

  • stopwatch.Elapsed:返回TimeSpan类型

计算StopWatch开启和关闭期间不执行程序时的耗时:

static void Main(string[] args)
{
    Stopwatch stopwatch = new Stopwatch();
    stopwatch.Start();
    stopwatch.Stop();
    Console.WriteLine("Stopwatch.ElapsedTicks:" + stopwatch.ElapsedTicks);
    Console.ReadKey();
}

输出:14ns(20ns以内)

计算StopWatch开启和关闭期间执行循环程序时的耗时:

计时器从开启到关闭的总运行时间与循环中第一次DateTime.Now到循环中最后一次DateTime.Now的时间间隔进行比较:
static void Main(string[] args)
{
    Stopwatch stopwatch = new Stopwatch();
    stopwatch.Start();
    for (int i = 0; i < 1000; i++)
    {
        var now = DateTime.Now;
        Console.WriteLine(string.Format("Ticks:{0}\tMilliseconds:{1}", now.Ticks, now.Millisecond));
    }
    stopwatch.Stop();
    Console.WriteLine("Stopwatch.ElapsedTicks:" + stopwatch.ElapsedTicks);
    Console.ReadKey();
}

574-252=322。

测试得出:使用DateTime计算程序运行的时间间隔,误差1ms内,可控。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/403500.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【剧前爆米花--爪哇岛寻宝】进程的调度以及并发和并行,以及PCB中属性的详解。

作者&#xff1a;困了电视剧 专栏&#xff1a;《JavaEE初阶》 文章分布&#xff1a;这是关于进程调度、并发并行以及相关属性详解的文章&#xff0c;我会在之后文章中更新有关线程的相关知识&#xff0c;并将其与进程进行对比&#xff0c;希望对你有所帮助。 目录 什么是进程/…

redis布隆过滤器与四个缓存问题

目录布隆过滤器定义特性使用场景解决缓存穿透的问题黑白名单校验底层原理哈希冲突案例添加key查询key总结四个缓存问题缓存雪崩定义解决方案缓存穿透定义解决方案方案一方案二(guava实现)代码案例源码分析方案三(RedisSon实现)代码实现方案四(直接安装redis插件,应用层解决方案…

港科夜闻|香港科大与中国联通成立联合实验室,推动智慧社会研究发展

关注并星标每周阅读港科夜闻建立新视野 开启新思维1、香港科大与中国联通成立联合实验室&#xff0c;推动智慧社会研究发展。香港科大与中国联通于3月9日签署两份协议以加强战略合作&#xff0c;并成立「香港科技大学 - 中国联通智慧社会联合实验室」&#xff0c;就香港科大建构…

基于支持向量机SVM的风电场NWP数据预测,SVM的详细原理

目录 支持向量机SVM的详细原理 SVM的定义 SVM理论 Libsvm工具箱详解 简介 参数说明 易错及常见问题 SVM应用实例,基于SVM的风电场NWP预测 结果分析 展望 支持向量机SVM的详细原理 SVM的定义 支持向量机(support vector machines, SVM)是一种二分类模型,它的基本模型是定…

江苏专转本转本人后悔排行榜

江苏专转本转本人后悔排行榜 一、复习的太迟&#xff1a; 后悔指数:五颗星。 复习越到最后&#xff0c;时间一天天变少&#xff0c;要复习的内容还有很多&#xff0c;很多人都后悔没有早早开始&#xff0c;总想着多给我两月一定会考上的。 担心时间不够用&#xff0c;那就努力利…

【论文阅读】浏览器扩展危害-Helping or Hindering? How Browser Extensions Undermine Security

本文来源于ACM CCS 2022&#xff1b; https://dl.acm.org/doi/10.1145/3548606.3560685 摘要 “浏览器扩展”是轻量级的浏览器附加组件&#xff0c;使用各个浏览器特定的功能丰富的JavaScript api&#xff0c;为用户提供了额外的Web客户端功能&#xff0c;如改进网站外观和与…

【id:21】【20分】A. DS单链表--类实现

题目描述用C语言和类实现单链表&#xff0c;含头结点属性包括&#xff1a;data数据域、next指针域操作包括&#xff1a;插入、删除、查找注意&#xff1a;单链表不是数组&#xff0c;所以位置从1开始对应首结点&#xff0c;头结点不放数据类定义参考输入n第1行先输入n表示有n个…

Amazon GuardDuty 的新增功能 – Amazon EBS 卷的恶意软件检测

亚马逊云科技开发者社区为开发者们提供全球的开发技术资源。这里有技术文档、开发案例、技术专栏、培训视频、活动与竞赛等。帮助中国开发者对接世界最前沿技术&#xff0c;观点&#xff0c;和项目&#xff0c;并将中国优秀开发者或技术推荐给全球云社区。如果你还没有关注/收藏…

字符函数和字符串函数(详解)

前言&#xff1a;内容包括&#xff1a;strlen&#xff0c;长度不受限制的字符串函数&#xff08;strcpy&#xff0c;strcat&#xff0c;strcmp&#xff09; 长度受限制的字符串函数&#xff08;strncpy&#xff0c;strncat&#xff0c;strncmp&#xff09;&#xff0c;strstr …

Java笔记029-泛型

泛型泛型的理解和好处看一个需求请编写程序&#xff0c;在ArrayList中&#xff0c;添加3个Dog对象Dog对象含有name和age&#xff0c;并输出name和age(要求使用getXxx)先用传统的方法来解决->引出泛型package com15.generic;import java.util.ArrayList;/*** author 甲柒* ve…

Docker Remote API未授权访问

目录Docker简述Docker 2375端口安全风险Docker命令连接利用声明&#xff1a;本文仅供学习参考&#xff0c;其中涉及的一切资源均来源于网络&#xff0c;请勿用于任何非法行为&#xff0c;否则您将自行承担相应后果&#xff0c;本人不承担任何法律及连带责任。Docker简述 Docke…

[GXYCTF 2019]Ping Ping Ping

禁了空格&#xff0c;并且不能用${IFS},因为{也禁了 ;ls发现 flag也被禁了 看index.php的源码 ;cat$IFS$9index.php 可以base64编码绕过 ;echo$ISF$9Y2F0IGZsYWcucGhw|base64$IFS$9-d|sh bash被禁了&#xff0c;所以用sh 可以内联执行绕过 ;cat$IFS$9ls 这个ls相当于看ind…

自组织( Self-organization),自组织临界性(Self-organized criticality)

文章目录1. 自组织概述原则历史按领域物理化学生物学2. 自组织临界性概述3. 自组织临界性的特征4. 自组织临界模型5. 自然界中的自组织临界6. 自组织临界性和优化7. 自组织临界性的控制7.1 方案7.2 应用1. 自组织 wiki: Self-organization 图 200 C 水热处理过程中微米级 Nb3O…

【游戏爆料】揭开“搬砖党”背后的秘密

在网络游戏行业繁荣的背后&#xff0c;存在着庞大的黑产链条&#xff0c;它严重威胁着游戏厂商的业务安全&#xff0c;破坏游戏属性的平衡&#xff0c;给玩家带来不好的游戏体验。有些玩家可能有疑惑&#xff0c;黑产是什么&#xff1f;分成哪些种类&#xff1f;其实&#xff0…

Windows系统下基于开源软件的多物理场仿真

Windows系统下基于开源软件的多物理场仿真实践技术应用随着计算机技术的发展&#xff0c;计算机仿真技术日益成为继实验和理论之后的第三种重要研究和设计手段。真实世界中遇到的问题往往是固体力学&#xff0c;流体力学&#xff0c;热&#xff0c;电磁等多种现象耦合而成&…

设计模式之不变模式

在并行软件开发过程中&#xff0c;同步操作是必不可少的。当多线程对同一个对象进行读写操作时&#xff0c;为了保证对象数据的一致性和正确性&#xff0c;有必要对对象进行同步操作&#xff0c;但同步操作对系统性能有损耗。不变模式可以去除这些同步操作&#xff0c;提高并行…

奇舞周刊第485期:3 个容易混淆的前端框架概念

记得点击文章末尾的“ 阅读原文 ”查看哟~下面先一起看下本期周刊 摘要 吧~奇舞推荐■ ■ ■3 个容易混淆的前端框架概念大家好&#xff0c;我卡颂。有 3 个容易混淆的前端框架概念&#xff1a;响应式更新 单向数据流 双向数据绑定 在继续阅读本文前&#xff0c;读者可以思考下…

Golang并发编程

Golang并发编程 文章目录Golang并发编程1. 协程2. channel2.1 channel的创建2.2 使用waitGroup实现同步3. 并发编程3.1 并发编程之runtime包3.2 mutex互斥锁3.3 channel遍历3.3.1 for if遍历3.3.2 for range3.4 select switch3.5 Timer3.5.1 time.NewTimer()3.5.2 Stop、reset…

分布式架构-可靠通讯-服务安全

系列目录 分布式架构-可靠通讯-零信任网络 分布式架构-可靠通讯-服务安全 引子 上一节“分布式架构-可靠通讯-零信任网络”里&#xff0c;我们探讨了与微服务运作特点相适应的零信任安全模型。本节&#xff0c;我们将从实践和编码的角度出发&#xff0c;介绍在前微服务时代(以 …

Lambda表达式与函数式接口

目录 自定义函数式接口 常用的内置函数式接口 1.Supplier接口 2.Consumer接口 3.Predicate接口 4.Function接口 自定义函数式接口 需求&#xff1a;实现两数的加减乘除 接口&#xff0c;函数式接口只能有一个抽象方法&#xff0c;且需要用注释FunctionInterface。 Func…