简单数学问题求助

2019-01-16 11:32:36 +08:00
 faker1

/***
 有一段 go 代码如下, 这个 ```result ```值 在某个区间是一样的?
***/
package main

import (
	"time"
	"log"
)


func PrevSlot(now int64) int64 {
	// now = time.Now().Unix()
	var blockInterval = int64(10)

	result := int64((now-1)/blockInterval) * blockInterval //  这个值在咋一样呢?弄了半天不懂
	log.Println("PrevSlot:", int64(result), int64((now-1)/blockInterval), now)
	return result
}


func main() {
	//fmt.Println(15 /2)
	ticker := time.NewTicker(1 * time.Second)
	for {
		<-ticker.C

		now := time.Now().Unix()
		PrevSlot(now)
	}

}

/**
output:
2019-01-16 10:58:31.668597 I | dpos.go: PrevSlot: 1547607510 154760751 1547607511
2019-01-16 10:58:32.668649 I | dpos.go: PrevSlot: 1547607510 154760751 1547607512
2019-01-16 10:58:33.668568 I | dpos.go: PrevSlot: 1547607510 154760751 1547607513
2019-01-16 10:58:34.668572 I | dpos.go: PrevSlot: 1547607510 154760751 1547607514
2019-01-16 10:58:35.668547 I | dpos.go: PrevSlot: 1547607510 154760751 1547607515

 */

707 次点击
所在节点    问与答
0 条回复

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/527516

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX