我有一個下面的代碼,我們試圖從時代以來以微秒爲單位獲取當前時間戳,但我們使用的是steady_clock
。獲取自時代以來微秒的當前時間戳?
inline uint64_t get_timestamp()
{
std::chrono::time_point<std::chrono::steady_clock> ts = std::chrono::steady_clock::now();
return std::chrono::duration_cast<std::chrono::microseconds>(ts.time_since_epoch()).count();
}
這是因爲按照我的理解steady_clock
用來測量時間沒拿到當天的當前時間的推移,這樣做的正確方法?或者我應該使用system_clock
這個像下面所顯示的:
inline uint64_t get_timestamp()
{
std::chrono::time_point<std::chrono::system_clock> ts = std::chrono::system_clock::now();
return std::chrono::duration_cast<std::chrono::microseconds>(ts.time_since_epoch()).count();
}
我需要使用std::chrono
包只因爲這就是我們所有的代碼使用。
@πάνταῥεῖ'的std :: uint64_t'?反正至少再長一點。當前時間自本文寫作時的時間爲1440440480秒,即0x51dac207a0000微秒。 –
@πάνταῥεῖ'uint64_t' ... –
對不起,我們現在對納秒精度感到困惑。 –