跳至主要內容
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?

4563博客

全新的繁體中文 WordPress 網站
  • 首頁
  • 在闰秒时刻的 Unix 时间戳怎么表示?
未分類
3 9 月 2020

在闰秒时刻的 Unix 时间戳怎么表示?

在闰秒时刻的 Unix 时间戳怎么表示?

資深大佬 : 7DLNU56W 7

大家都知道,Unix 时间戳中是不考虑闰秒的,比如:

UTC 时间 2016 年 12 月 31 日,23 时 59 分 59 秒 对应的 Unix 时间戳为 1483228799

UTC 时间 2017 年 01 月 01 日,00 时 00 分 00 秒 对应的 Unix 时间戳为 1483228800

那么 UTC 时间的 2016 年 12 月 31 日,23 时 59 分 60 秒该如何表示,是没有与其对应的时间戳,还是说延用 1483228799 呢?

这种情况下,依靠时间戳计时的程序在这一时刻会不会出问题?

大佬有話說 (4)

  • 資深大佬 : jingniao

    我没记错的话,是没有对应的时间戳,ntp 时间同步程序,发现时间不一致后,是缓慢同步的正确的时间,所以闰秒附近的每秒会比较长

  • 資深大佬 : explore365

    靠时间戳计时的不会出问题,不管时间怎么润,时间戳还是默默的 +1s,时间是靠时间戳来转换的。

  • 資深大佬 : yzwduck

    把闰秒平均分到附近的一段时间内,这种做法叫做 Leap Smear
    Leap Smear 对时间产生的偏差远小于一般计时误差要求,所以依赖时间戳的程序不会遇到问题。

  • 資深大佬 : jim9606

    关于这个问题,英文维基给了好几种处理方法( https://en.wikipedia.org/wiki/Unix_time ),简单来说当把 UNIX time 转换为 UTC 时,正闰秒会出现一个 UNIX time 对应两个 UTC time,负闰秒(从未发生)会导致一个 UNIX time 没有对应的 UTC time 。

    当然如果你是转换到 TAI,那就不存在闰秒问题了。

文章導覽

上一篇文章
下一篇文章

AD

其他操作

  • 登入
  • 訂閱網站內容的資訊提供
  • 訂閱留言的資訊提供
  • WordPress.org 台灣繁體中文

51la

4563博客

全新的繁體中文 WordPress 網站
返回頂端
本站採用 WordPress 建置 | 佈景主題採用 GretaThemes 所設計的 Memory
4563博客
  • Hostloc 空間訪問刷分
  • 售賣場
  • 廣告位
  • 賣站?
在這裡新增小工具