我正在使用boost::asio::steady_timer m_timer
,如果我没有弄错的话,为了调用m_timer.expires_after(expiration_time_ms);
,expiration_time_ms
应该是一个std::chrono::milliseconds
变量。
然而,在我的情况下,过期时间是以double
形式给出的。我想知道是否可以将double
强制转换为std::chrono::milliseconds
。
目的是调用
void
setExpirationTime(my_casted_double) {
boost::asio::steady_timer m_timer;
m_timer.expires_after(my_casted_double)
}
my_time
应该是std::chrono::duration
类型(或者只需保留auto
)。 - m88boost::asio::steady_timer::expires_after
不接受浮点数持续时间,除非进行显式转换。 - Alan Birtles