我是提升和计时的新手。我正在编写一个记录器,记录API调用的时间戳,进入和退出。我首先尝试使用boost :: xtime,但它没有提供我需要的高分辨率值。因此正在考虑使用Chrono。我宣布了一个boost :: chrono :: hight_resolution_clock :: time_stamp x;获取时间戳的变量并将其分配给boost :: chrono :: hight_resolution_clock :: now();.现在,我需要从这个变量中获取纳秒并将其放入我的日志文件中(这就是要求)。所以我把它转换为boost :: chrono :: duration_cast(x)。但它不会让我这样做。它显然需要2个参数,我只有一个。有办法解决这个问题吗?是否可以创建另一个time_stamp变量并为其赋值并使用该变量?我尝试分配零,但它不起作用。请帮助我。
谢谢, 萨姆
答案 0 :(得分:2)
如果标记为 <div class="subheader-bar">
<div class="row">
<div class="logo-b pull-left" style="border:none">
<img src="./images/hello-moto-4.jpg" alt="Hello Moto" class="img-responsive">
</div>
<div id="navbar" class="navbar-collapse collapse pull-right">
<ul class="nav navbar-nav navbar-right">
<li><a href="bm_reportwriter_tpl-v3.html" class="text-center"><i class="fa fa-home fa-2x "></i> <br>Home</a></li>
<li><a href="bm_summary_tpl.html" class="text-center"><i class="fa fa-info-circle fa-2x "></i> <br>About</a></li>
<li><a href="bm_linechart_tpl.html" class="text-center"><i class="fa fa-area-chart fa-2x"></i> <br>Charts</a></li>
<li><a href="#" class="text-center"><i class="fa fa-users fa-2x"></i> <br>Partners</a></li>
<li><a href="#" class="text-center"><i class="fa fa-question-circle fa-2x"></i> <br>FAQ's</a></li>
<li><a href="#" class="text-center"><i class="fa fa-list-ul fa-2x"></i><br> News</a></li>
</ul>
</div>
</div>
</div>
<!-- Static Navigation -->
<nav class="navbar navbar-inverse navbar-static-top">
<div class="container-fluid">
<div class="navbar-header v-spacer1">
<button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Moto Moto </a>
</div>
<div id="navbar" class="navbar-collapse collapse">
<form class="navbar-form navbar-right v-spacer1">
<div class="input-group">
<span class="input-group-btn">
<button id="basic-search" class="btn btn-default " type="button" > <span class="glyphicon glyphicon-search" aria-hidden="true"></span></button>
</span>
<input type="text" id="basicsearchVal" class="form-control" placeholder="Enter a Ticker Symbol,CERT, BHCor a fragment of a Bank Name,." autocomplete="on">
<span class="input-group-btn spacer-l">
<button type="button" class="btn btn-primary " data-toggle="modal" data-target=".bs-example-modal-lg"> Advanced Search</button>
</span>
</div>
</form>
</div>
</div>
</nav>
<!-- End Navigation -->
<!-- LEFT NAVIGATION -->
<div id="control-panel">
<div id="menu">
<nav class="navbar-default navbar-side" role="navigation">
<div class="sidebar-collapse">
<ul class="nav" id="main-menu">
<li>
<a class="toggle-button-on" data-toggle="tooltip" data-placement="right" data-original-title="Open/Close"><i class="fa fa-exchange"></i><span> Open/Close</span></a>
</li>
<li>
<a ui-sref="Home" data-toggle="tooltip" data-placement="right" data-original-title="User1"><i class="fa fa-user fa-lg"></i><span> Welcome User1</span></a>
</li>
<li>
<a ui-sref="Home" data-toggle="tooltip" data-placement="right" data-original-title="Home"><i class="fa fa-home fa-lg"></i><span> Home</span></a>
</li>
<li>
<a ui-sref="ScenarioComparison" data-toggle="tooltip" data-placement="right" data-original-title="Search"><i class="fa fa-search fa-lg"></i><span> Search</span></a>
</li>
<li ng-controller="scenarioController">
<a data-toggle="tooltip" data-placement="right" data-original-title="Charts"><i class="fa fa-bar-chart-o fa-lg"></i><span> Charts</span></a>
</li>
<li>
<a ui-sref="ScenarioComparison" data-toggle="tooltip" data-placement="right" data-original-title="WatchList"><i class="fa fa-table fa-lg"></i><span> Todays List</span></a>
</li>
<li>
<a ui-sref="Dashboard" data-toggle="tooltip" data-placement="right" data-original-title="DashBoard"><i class="fa fa-dashboard fa-lg"></i><span> FAQ</span></a>
</li>
</ul>
</div>
</nav>
</div>
</div>
<!-- END LEFT NAVIGATION -->
<div class="container-fluid">
<div class="row">
<div class="col-md-11" style="width:500px; float:right">
<h3 class="subheader" style="margin-top:50px"> Sample Info </h3>
<div class="redmond">
<p>
lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum lorem ipsum
</p>
<table id="output"></table>
</div>
</div>
</div>
</div>
<!-- begin footer -->
<footer class="footer">
<div class="container">
<div class="tbs-content-container" >
<div class="tbs-content" >
<div class="tbs-row">
<div class="tbs-col tbs-w50 tbs-responsive" style="padding-top:12px;">
<p class="tbs-text-size-sm-1x" style="font-weight:bold;">HQ:</p>
<p class="tbs-text-size-sm-1x"><i class="fa fa-map-marker fa-lg fa-fw"></i> 3 moto ave, Diagon Alley, NJ 07364</p>
<p class="tbs-text-size-sm-1x"><i class="fa fa-envelope fa-lg fa-fw"></i> <a href="mailto:info@totalbanksolutions.com">info@motowho.com</a></p>
<p class="tbs-text-size-sm-1x"><i class="fa fa-phone fa-lg fa-fw"></i> (800) 300-MOTO</p>
</div>
<div class="tbs-col tbs-w50 tbs-responsive tbs-text-right">
<p><a href="index.html"><img class="tbs-responsive" src="images/moto_logo_transp.png" alt="moto Logo" style="max-width:150px"></a></p>
<p class="tbs-text-size-sm-2x" id="footer-copyright">© 2016 MOTO Who.</p>
</div>
</div>
<br><br>
</div>
</div>
</div>
</footer>
,为什么不使用c++11
?
std::chrono
答案 1 :(得分:1)
boost::chrono::duration_cast
将持续时间转换为指定的单位,但您已将其设为boost::chrono::time_point
,而非持续时间。
确实没有&#34; 以纳秒为单位的当前时间&#34;。要获得持续时间,您需要指定您想知道已经过了多少纳秒的时间(&#34; epoch&#34;)。不同的时钟将根据不同的时期来衡量他们的时间。
boost::chrono::system_clock
(目前)使用Unix纪元(1970年1月1日午夜)作为它的纪元,但它不稳定,它可能没有你需要的分辨率(它在我的Ubuntu盒子上有纳秒,但在我的Windows盒子上只有1 / 10,000,000秒/秒。
boost::chrono::high_resolution_clock
使用启动作为其纪元,稳定,并在我测试的两个盒子上测量时间(以纳秒为单位)。
Boost还提供其他时钟,如process_cpu_clock
,使用其他时期,并计入其他单位。
因此,您可以使用system_clock
从1970年1月1日起获得nanos,但它实际上可能不是纳秒准确的,并且如果用户更改系统时间或计算机与网络时间同步,它可能会倒退,或者你可以使用high_resolution_clock
从其他时间点获得nanos。