gpt4 book ai didi

tarantool - 在 Tarantool 中处理日期的正确方法是什么?

转载 作者:行者123 更新时间:2023-12-03 15:34:56 24 4
gpt4 key购买 nike

有几种方法可以在 Tarantool 中获得时间:

  • 使用 clock模块
  • 使用 fiber.time功能
  • 使用 os.date

  • 但是使用日期的正确方法是什么?

    最佳答案

    首先,Unix epoch 有几个例程:

  • os.time() ——经典Lua时间函数。有点慢,效率不高。不建议在 tarantool 内部使用来获取当前纪元,但当然可以。可用于获取任意日期的纪元(在本地时区内)。例如:

  • os.time({ year = 2020, month = 6, day = 4 })

    将产生 1591261200 ,在我的 GMT+3 时区是 12:00:00
  • clock.time() (和 clock.time64() ) — 高分辨率计时器,几乎原始绑定(bind)到 clock_gettime .更多信息可从 doc 获取
  • fiber.time() (还有 fiber.time64() )——clock.time 的缓存版本。更新每个事件循环迭代。如果不需要时钟的绝对精度,建议使用。

  • 为了将纪元转换为不同的格式和时区,有以下变体:
  • os.date("<format>" [, epoch ]) — 将纪元转换为本地时区。
  • os.date("!<format>" [, epoch ]) (注意 ! 前缀)— 将纪元转换为 GMT 时区。
  • 我们可以使用 os.date('*t') 获取日期的组成部分作为表格。对于本地和 os.date('!*t')对于 UTC
  • icu-date可能会认为您需要使用不同的时区和/或格式。

  • 比如需要UTC时间,可以使用缓存 fiber.timeos.date :

    local fiber = require 'fiber'
    os.date("!%Y-%m-%dT%H:%M:%SZ", fiber.time())

    将返回类似 2020-06-04T11:48:54Z 的内容独立于时区

    关于tarantool - 在 Tarantool 中处理日期的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62191655/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com