我想有一个函数来获取自ns时代以来的时间。我在使用boost::ptime
的解决方案:
auto cur_time = ptime(day_clock::universal_day(), return microsec_clock::universal_time().time_of_day());
return (cur_time - date(1970,1,1)).total_microseconds();
我还使用std :: chrono:
测试了该解决方案return std::chrono::duration_cast< std::chrono::microseconds >(std::chrono::system_clock::now().time_since_epoch()).count();
boost解决方案比std :: chrono解决方案慢10倍。 (我的Linux机器上为150ns与1500ns)。有没有一种更好(更快)的方法来获取自我丢失的Boost :: datetime以来的时间?
答案 0 :(得分:1)
Boost是灵活的跨平台代码,libstdc ++(可能是您正在使用的标准库)是与编译器一起编写的,并且比boost :: chrono更新的代码,因此更有可能实现最有效的实现。
我总是建议尽可能在标准库实现完整的地方使用标准库实现而不是boost。通常,使用单个Symfony\Bundle\SwiftmailerBundle\SwiftmailerBundle::class => ['all' => true],
在实现之间进行切换就相当容易了。