Go에서 시간을 정확하게 측정
배경:
시간을 측정하는 전통적인 방법 시간대 등 시스템 시간 조정으로 인해 시간 패키지 사용이 정확하지 않을 수 있습니다. 변화 또는 윤초. 이러한 조정은 time.Now()를 기반으로 한 시간 측정의 정확성에 영향을 미칠 수 있습니다.
단조 시계:
Go는 단조 시계를 사용하여 이 문제를 해결합니다. 그러한 조정의 대상이 됩니다. Go 1.9부터 Go는 기간 측정을 위한 단조 시계를 제공합니다. 이렇게 하면 시스템 시간이 변경되더라도 경과 시간 측정이 일관되고 정확합니다.
예:
start := time.Now() ... operation that takes 20 milliseconds ... t := time.Now() elapsed := t.Sub(start)
이 예에서 경과 시간은 항상 동안 벽시계의 변경 사항에 관계없이 약 20밀리초입니다.
기타 숙어:
단조 시계를 사용하는 기타 시간 연산 포함:
이 관용구는 벽시계에도 강합니다.
참고:
Go 1.9 이전에는 시간 측정에 time.Now()를 사용하면 부정확할 수 있었습니다. 그러나 단조 시계가 도입되면서 이제 Go는 정확하고 신뢰할 수 있는 시간 측정을 제공합니다.
위 내용은 시스템 시간이 변경되는 경우에도 Go에서 시간 기간을 어떻게 정확하게 측정할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!