Closed jjjjilyf closed 6 years ago
`func (user User) autoSaveDB() { const duration = 5 time.Minute
// save user.saveDBTimer = skeleton.AfterFunc(duration, func() { data := util.DeepClone(user.data) user.Go(func() { db := mongoDB.Ref() defer mongoDB.UnRef(db) userID := data.(*UserData).UserID _, err := db.DB("game").C("users"). UpsertId(userID, data) if err != nil { log.Error("save user %v data error: %v", userID, err) } }, func() { user.autoSaveDB() }) })
}`
这里是每个玩家Login成功和Logout之后会调用这个自动保存的函数autoSaveDB,5分钟后保存一次。 是这样 每个玩家创建一个saveDBTimer好呢?还是使用一个定时器给所有玩家统一5分钟保存一次好呢? 谢谢回答
按范例做法就可以了。
好的,3Q
`func (user User) autoSaveDB() { const duration = 5 time.Minute
}`
这里是每个玩家Login成功和Logout之后会调用这个自动保存的函数autoSaveDB,5分钟后保存一次。 是这样 每个玩家创建一个saveDBTimer好呢?还是使用一个定时器给所有玩家统一5分钟保存一次好呢? 谢谢回答