zoukankan      html  css  js  c++  java
  • C++时间

    C++时间

    头文件 chrono, 命名空间 std.

    现在时间

      std::chrono::system_clock::now() 返回系统时钟的当前时间

    时钟

      std::chrono::system_clock 代表系统当前的时间, 是不稳定的时钟, 并且提供了函数可将时间点转化为 time_t 类型的值
      std::chrono::steady_clock 表示一个稳定的时钟, 所谓稳定指调用 now()时, 其值总是大于上1次.

    延迟

      std::this_thread::sleep_for() 和 std::this_thread::sleep_until()
      std::this_thread::sleep_for(std::chrono::milliseconds(100)); // 等待 100ms

    取得当前时间

        #include <chrono>
        #include <sstream>
        #include <iomanip>
        std::string GetTimeStr()
        {
            std::chrono::system_clock::time_point now = std::chrono::system_clock::now();
            time_t tt = std::chrono::system_clock::to_time_t(now);
            struct tm ltm = {0};
            localtime_s(&ltm, &tt);
            std::stringstream stm;
            stm << std::setfill('0');
            stm << std::setw(4) << (ltm.tm_year + 1900) << "-";
            stm << std::setw(2) << (ltm.tm_mon + 1) << "-";
            stm << std::setw(2) << ltm.tm_mday << " ";
            stm << std::setw(2) << ltm.tm_hour << ":";
            stm << std::setw(2) << ltm.tm_min << ":";
            stm << std::setw(2) << ltm.tm_sec;
    
            return stm.str();
        }

    计算程序代码执行的时间

        std::chrono::steady_clock::time_point tbegin = std::chrono::steady_clock::now();
    
        do_something();
    
        std::chrono::steady_clock::time_point tend = std::chrono::steady_clock::now();
    
        std::chrono::milliseconds used = std::chrono::duration_cast<std::chrono::milliseconds>(tend - tbegin);
        std::cout << "used time:" << used.count() << " ms" << std::endl;
  • 相关阅读:
    深入理解系统调用
    基于mykernel 2.0编写一个操作系统内核
    交互式多媒体图书平台的设计与实现
    Ubuntu下VSCode调试环境搭建指南-C语言篇
    码农的自我修养之必备技能 学习笔记
    工程化编程实战callback接口学习笔记
    CentOS7.4网络配置
    R-CNN
    CUDA整理
    CUDA by Example 第四章 julia集
  • 原文地址:https://www.cnblogs.com/diysoul/p/5937139.html
Copyright © 2011-2022 走看看