Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >go时间/时间戳操作大全

go时间/时间戳操作大全

原创
作者头像
李昊天
修改于 2019-07-09 03:26:37
修改于 2019-07-09 03:26:37
2.1K0
举报

基本操作

01: 获取当前时间

代码语言:txt
AI代码解释
复制
dateTime := time.Now()

fmt.Println(dateTime)

02: 获取年 月 日 时 分 秒 纳秒

代码语言:txt
AI代码解释
复制
year := time.Now().Year() //年



fmt.Println(year)



month := time.Now().Month() //月

fmt.Println(month)



day := time.Now().Day() //日

fmt.Println(day)



hour := time.Now().Hour() //小时

fmt.Println(hour)



minute := time.Now().Minute() //分钟

fmt.Println(minute)



second := time.Now().Second() //秒

fmt.Println(second)



nanosecond := time.Now().Nanosecond() //纳秒

fmt.Println(nanosecond)

03: 获取当前时间戳

代码语言:txt
AI代码解释
复制
timeUnix := time.Now().Unix()         //单位秒

timeUnixNano := time.Now().UnixNano() //单位纳秒

    

fmt.Println(timeUnix)

fmt.Println(timeUnixNano)

04: 将时间戳格式化

代码语言:txt
AI代码解释
复制
fmt.Println(time.Now().Format("2006-01-02 15:04:05"))

05: 时间戳转为go格式的时间

代码语言:txt
AI代码解释
复制
var timeUnix int64 = 1562555859

fmt.Println(time.Unix(timeUnix,0))



// 之后可以用Format 比如

fmt.Println(time.Unix(timeUnix, 0).Format("2006-01-02 15:04:05"))

06: str格式化时间转时间戳

代码语言:txt
AI代码解释
复制
t := time.Date(2014, 1, 7, 5, 50, 4, 0, time.Local).Unix()



fmt.Println(t)

时间的计算

01: 获取今天0点0时0分的时间戳

代码语言:txt
AI代码解释
复制
currentTime := time.Now()

startTime := time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 0, 0, 0, 0, currentTime.Location())

fmt.Println(startTime)

fmt.Println(startTime.Format("2006/01/02 15:04:05"))

02: 获取今天23:59:59秒的时间戳

代码语言:txt
AI代码解释
复制
currentTime := time.Now()

endTime := time.Date(currentTime.Year(), currentTime.Month(), currentTime.Day(), 23, 59, 59, 0, currentTime.Location())

fmt.Println(endTime)

fmt.Println(endTime.Format("2006/01/02 15:04:05"))

03: 获取1分钟之前的时间

代码语言:txt
AI代码解释
复制
m, \_ := time.ParseDuration("-1m")

result := currentTime.Add(m)



fmt.Println(result)

fmt.Println(result.Format("2006/01/02 15:04:05"))

04: 获取1小时之前的时间

代码语言:txt
AI代码解释
复制
m, \_ := time.ParseDuration("-1h")

result := currentTime.Add(m)

fmt.Println(result)

fmt.Println(result.Format("2006/01/02 15:04:05"))

05: 获取1分钟之后的时间

代码语言:txt
AI代码解释
复制
m, \_ := time.ParseDuration("1m")

result := currentTime.Add(m)



fmt.Println(result)

fmt.Println(result.Format("2006/01/02 15:04:05"))

06: 获取1小时之后的时间

代码语言:txt
AI代码解释
复制
m, \_ := time.ParseDuration("1h")

result := currentTime.Add(m)

fmt.Println(result)

fmt.Println(result.Format("2006/01/02 15:04:05"))

07 :计算两个时间戳

代码语言:txt
AI代码解释
复制
afterTime, \_ := time.ParseDuration("1h")

result := currentTime.Add(afterTime)



beforeTime, \_ := time.ParseDuration("-1h")

result2 := currentTime.Add(beforeTime)



m := result.Sub(result2)

fmt.Printf("%v 分钟 \n", m.Minutes())



h := result.Sub(result2)

fmt.Printf("%v小时 \n", h.Hours())



d := result.Sub(result2)

fmt.Printf("%v 天\n", d.Hours()/24)

08: 判断一个时间是否在一个时间之后

代码语言:txt
AI代码解释
复制
stringTime, \_ := time.Parse("2006-01-02 15:04:05", "2019-12-12 12:00:00")

beforeOrAfter := stringTime.After(time.Now())



if true == beforeOrAfter {

    fmt.Println("2019-12-12 12:00:00在当前时间之后!")

} else {

    fmt.Println("2019-12-12 12:00:00在当前时间之前!")

}

09: 判断一个时间相比另外一个时间过去了多久

代码语言:txt
AI代码解释
复制
startTime := time.Now()

time.Sleep(time.Second \* 5)



fmt.Println("离现在过去了:", time.Since(startTime))

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
QoS 工作原理与相关技术细节
VOIP:Voice Over Internet Protocol 模拟声音讯号数字化
利又德智能感知
2022/11/07
9051
QOS面试考点-第一篇
HCIER&S面试高频面试知识点QOS,近期会将QOS专题的所有知识点及面试中考官问到的问题点做一个分析。
Ponnie
2021/02/24
1.2K0
2万字带你学习Qos原理,还有6个实验案例,建议一定要收藏!
QoS(Quality of Service)是服务质量的简称。对于网络业务来说,服务质量包括哪些方面呢?从传统意义上来讲,无非就是传输的带宽、传送的时延、数据的丢包率等,而提高服务质量无非也就是保证传输的带宽,降低传送的时延,降低数据的丢包率以及时延抖动等。广义上讲,服务质量涉及网络应用的方方面面,只要是对网络应用有利的措施,其实都是在提高服务质量。因此,从这个意义上来说,防火墙、策略路由、快速转发等也都是提高网络业务服务质量的措施之一。
网络技术联盟站
2020/09/29
4.4K1
2万字带你学习Qos原理,还有6个实验案例,建议一定要收藏!
QOS面试总结第二篇
(1)双桶双速是有两个速度的(cir和pir),系统使用cir(承诺信息速率)朝着cbs(承诺突发尺寸)注入令牌;使用pir(峰值信息速率)朝pbs(峰值突发尺寸),当有数据经过这两个桶时,先检查pbs再检查cbs:
Ponnie
2021/03/05
1.7K0
QOS面试总结第二篇
一文带你了解QoS技术与功能
QoS(Quality of Service,服务质量)指一个网络能够利用各种基础技术,为指定的网络通信提供更好的服务能力,是网络的一种安全机制, 是用来解决网络延迟和阻塞等问题的一种技术。
网络工程师笔记
2021/05/17
1.1K0
一文带你了解QoS技术与功能
QOS队列技术有哪些?令牌桶又是什么?
1、FIFO:先进先出队列,是单队列技术,不会引入额外延迟,延迟只与队列长度有关,不提供任何差分服务。
Ponnie
2021/08/25
3K1
QOS队列技术有哪些?令牌桶又是什么?
比较 QoS 服务策略的 bandwidth 和 priority 命令
要想知道梨子的味道最好亲口尝一尝,网上本来有篇“比较QoS服务策略的bandwidth及priority 命令”,怎么看怎么像机器翻出来的,这里重新翻译了下
SuperDream
2019/02/28
2.6K0
确定性网络:打造网络里的超级高铁
作者简介:黄玉栋,北京邮电大学网络与交换国家重点实验室研二在读,研究方向为未来网络体系架构,确定性网络
SDNLAB
2020/09/22
1.4K0
确定性网络:打造网络里的超级高铁
什么是QoS?QoS是如何工作的?QoS的实验配置如何进行?
QoS(Quality of Service)是服务质量的简称。对于网络业务来说,服务质量包括哪些方面呢?
网络技术联盟站
2023/02/10
2.3K0
什么是QoS?QoS是如何工作的?QoS的实验配置如何进行?
基于SDN网络的QoS机制研究(上)
蒋暕青,华东师范大学研究生学历,先后于思博伦通信、上海宽带技术及工程研究中心、九州云就职。
SDNLAB
2020/06/19
1.6K0
[RoCE]网络QoS总结
 1.什么是QoS QoS是一种机制,它给一个网络流赋予一个优先级,并且管理它的最低需求(guarantees),极限能力(limitations)和它相比其他网络流的优先级服务。这是通过一个2/3阶段的过程将用户层的优先级映射到一个硬件层流量类(hardware Traffic Class)上实现的。流量类被赋予QoS属性(缓存分配,流控制,排队,调度,随机早期检测,显式拥塞通知等等),并且不同的流按照这些对应的属性被服务。 2.为什么RoCE网络需要QoS  RDMA最初设计用在运行高性能计算应用的in
昊楠Hacking
2018/03/30
3.2K0
QOS-3
先进先出,没有优先级可言,who第一个进,who第一个出去。,以太网和快速以太网接口默认queue是FIFO
py3study
2020/01/09
1.1K0
QOS-3
2200字详细讲解计算机网络的“流量管理员”:QoS 服务质量
在平时工作中,不管是软件开发者、还是运维实施者、还是网络工程师,都会遇到一个专业术语:QoS。像软件开发人员在对接MQTT的时候就会面临着QoS的设置,像网络工程师在设置流策略的时候,也会面临QoS的设置,那么这个QoS到底是个什么神器,能够受到多方IT技术人员的青睐呢?
网络技术联盟站
2023/03/05
6510
2200字详细讲解计算机网络的“流量管理员”:QoS 服务质量
Qos原理与配置
传统的IP网络无区别对待所有报文,网络设备处理报文采用的策略是先进先出FIFO,它依据报文到达时间的先后顺序分配转发所需要的资源。所有报文共享网络和设备的带宽等资源。
全栈程序员站长
2021/04/16
1.8K0
Qos原理与配置
QoS和网络性能基础
参加在线会议的时候,是不是经常发现主持人(或您自己)的语音和视频质量还有很多不足?在这个数字化时代,QoS对于为员工和客户提供卓越的体验至关重要。NetOps团队需要深入了解网络体系结构,策略和协议,以确保成功交付关键业务应用程序。
虹科网络可视化与安全
2021/04/07
1.5K0
浅谈Qos(服务访问质量)
随着网络的发展,互联网流量迅速增加,网络产生拥塞,延时增加,有时还会造成丢包,导致业务质量下降。当网络出现拥塞时,如何保证重要数据的带宽和实时性数据能够快速转发呢? QOS,服务质量。顾名思义,就是为了给现有的网络提供一个更好的性能,让各种网络应用更加顺畅的运作。当然了,如果你想让网络运作的更好,那你就得了解你自己的网络啊。看看这个网络中都运行着什么网络应用,且这些网络应用比较关心的网络因素有那些,比如网络延迟、抖动、丢包率等等因素。我们就是通过控制这些对网络应用有着关键作用的因素来调节网络的正常、高速运行的。可以这样说:QOS特性就是用来修理网络数据传输过程中的一些小瑕疵的特性。只要你把这个数据路径修理的足够光滑,在某种程度来说没有任何的阻碍了,那么数据跑起来就会相当的流畅,什么丢包啊,延迟啊,延迟抖动啊就都统统解决啦。速度和质量得到了双保障。当然了,我们得对症下药,知道问题出在了那里。并且,这样还不够,我们还要知道问题“可能”出在那里!这样的话,我们就会把这种数据传输过程中的一些不良的隐患全部消除掉了。 我们使用了QOS后,可以说是我们想让网络怎么地,网络就怎么地,完全处于你的控制中。不但实现了网络数据的流畅传输,并且对网络资源的使用也做到了精确的控制,不会浪费资源,也不会让资源出现极其紧张的局面,即使有可能出现紧张的局面,那么我们也有办法来预防这种情况的发生。废话了不少,这些都是使用QOS的好处。其实,仔细看看,也不是废话,其中也谈到了很多QOS的核心内容: 1、因为我们可以对各种网络应用做到了精确的控制使用资源,那么肯定就是对他们进行区别对待了,这也就是QOS中分类的概念啊。 2、上面说到的,修理数据传输路径上的小瑕疵,以求让数据传输的更流畅,这也就是后面我们将要降到的流量调节啊。 3、在最后面我们还提到了,出现资源紧张的局面,我们可以采取措施来搞定,这里也就说到了后面将要详细介绍的拥塞管理和拥塞避免。 QOS应用需求 1、网络拥塞 1)网络拥塞的产生 数据从高速端口进入设备,从低速端口转发出去。 流量汇聚,流量由多个端口进入设备,从一个端口转发出去,并且进入设备端口的速率之和大于转发接口的速率。 2)网络拥塞的影响 当网络出现拥塞时,可能对网络造成以下一些影响 报文传输延迟,延迟抖动和丢包率增加 由于过高的延迟和丢包导致报文重传,增加网络负担。 由于网络拥塞,报文重传导致网络的有效吞吐量降低。 3)网络拥塞的解决方法 在无法提高网络带宽的情况下,解决网络拥塞有效的方法是合理利用网络带宽,在网络发生拥塞时,根据业务的性质和需要使用QOS技术合理分配现有带宽,降低网络拥塞的影响。 QoS服务模型一共分为三种: 1、best-Effort service服务模型:它是一种单一的服务模型,也是最简单的服务模型,应用程序可以在任何时候发送任意数量的报文。网络尽最大可能发送这些报文,但是对于延时、可靠性不做保证,它是在互联网中默认的服务模型,其遵循先进先出的转发规则。 2、IntServ服务模型:IntServ服务模型在使用网络资源时,需要提前申请,申请的过程是通过RSVP(资源预留协议)完成的,应用程序会通过RSVP将需要的时延、带宽、丢包率等性能通知其他节点,这些节点收到资源预留请求后,会根据用户的合法性、资源使用情况来决定是否预留资源。 这个服务模型的扩展性很差,实施比较困难,并且RSVP存在一定缺陷,所以限制了它的广发应用。 3、Diffserv服务模型:它可以满足不同的QoS需求,与IntServ不同,它不需要预留资源,网络不需要为每个端到端的流量进行维护。Diffserv服务模型可以使用不同的方法来指定报文的QoS,如报文的优先级、MAC地址、源IP地址、目的IP地址等,网络可以通过这些信息来提供特定的服务(报文分类、流量整 形等)。 QoS的操作模型: QoS涉及四大组件:分类和标记、整 形和监管、拥塞避免和拥塞管理。QoS操作模型如下所示:
小手冰凉
2019/09/10
1.3K0
浅谈Qos(服务访问质量)
【面试系列】华为流量整形有哪几种方法?
(2)可以用在路由器接口使用,只是用于限速,配置接口速率百分比,必须结合队列使用才能生效;
Ponnie
2021/08/25
1.9K0
MPLS技术简介
今天海翎光电的小编就为大家介绍一下MPLS。 MPLS是一种提供高性价比和多业务能力的交换技术。
利又德智能感知
2024/03/15
3730
MPLS技术简介
功能应用:RoCE与IB协议栈的选择策略(二)
在上一篇中,我们对RoCE、IB的协议栈层级进行了详细的对比分析,二者本质没有不同,但基于实际应用的考量,RoCE在开放性、成本方面更胜一筹。本文我们将继续分析RoCE和IB在拥塞控制、QoS、ECMP三个关键功能中的性能表现。
星融元Asterfusion
2024/11/07
3620
功能应用:RoCE与IB协议栈的选择策略(二)
一文读懂时延敏感网络的调度整形机制
时延敏感网络(TSN, Time Sensitive Network)是指能保证时延敏感流的服务质量,实现低时延、低抖动和零丢包率的网络。
SDNLAB
2020/03/05
4.9K0
相关推荐
QoS 工作原理与相关技术细节
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档