Diagnostic: virtual clock drift in milliseconds (+ = ahead, - = behind)
| 63 | // Diagnostic: virtual clock drift in milliseconds (+ = ahead, - = |
| 64 | // behind) |
| 65 | [[nodiscard]] static std::int64_t current_drift_ms() |
| 66 | { |
| 67 | auto real_ms = absl::ToUnixMillis( absl::Now() ); |
| 68 | auto state_ms = g_state.load( std::memory_order_acquire ) >> 16; |
| 69 | return static_cast< std::int64_t >( state_ms ) - real_ms; |
| 70 | } |
| 71 | |
| 72 | private: |
| 73 | // Tuning parameters |