Documentation
¶
Index ¶
- type F64CountRank
- func (r *F64CountRank) DelByRank(start int64, stop int64) (err error)
- func (r *F64CountRank) DelScore(id int64) (err error)
- func (r *F64CountRank) Delete()
- func (r *F64CountRank) GetCount()
- func (r *F64CountRank) GetIdRankNotTs(id int64) (rankInfo *RankData)
- func (r *F64CountRank) GetRankInfosNotTs(offset, count int) (list []*RankData, err error)
- func (r *F64CountRank) IncrScore(id int64, score int64) (curScore float64, err error)
- func (r *F64CountRank) UpdateScore(id int64, score int64) (err error)
- type Mod
- func New() *Moddeprecated
- type RankData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type F64CountRank ¶
type F64CountRank struct {
// contains filtered or unexported fields
}
func (*F64CountRank) DelByRank ¶
func (r *F64CountRank) DelByRank(start int64, stop int64) (err error)
DelByRank 根据排名范围删除元素。 该方法使用了Redis的有序集合数据结构,通过ZRange和ZRemRangeByRank命令来实现。 参数start和stop定义了要删除的排名范围,从start到stop(包括start和stop)。 返回可能的错误。
func (*F64CountRank) DelScore ¶
func (r *F64CountRank) DelScore(id int64) (err error)
DelScore 删除当前分数
该方法从更新时间有序集合和排名有序集合中移除指定的id。 这通常用于从排行榜中删除一个条目,同时确保其在更新时间集合中的对应记录也被清除。
@Description: 从更新时间和排名集合中移除指定id @receiver r 接收者为F64CountRank类型的实例 @param id 要从集合中移除的条目的ID @return err 可能发生的错误,如果操作成功,err为nil
func (*F64CountRank) Delete ¶
func (r *F64CountRank) Delete()
Delete 删除当前排行榜 该方法通过删除Redis中与排行榜相关的键来清除排行榜信息
func (*F64CountRank) GetIdRankNotTs ¶
func (r *F64CountRank) GetIdRankNotTs(id int64) (rankInfo *RankData)
GetIdRankNotTs 获取指定id的当前排名 该方法从Redis的有序集合中查询指定id的分数和排名信息,不考虑时间戳 参数:
id - 需要查询排名的id
返回值:
rankInfo - 包含id的分数和排名信息的指针,如果没有找到,则返回nil
func (*F64CountRank) GetRankInfosNotTs ¶
func (r *F64CountRank) GetRankInfosNotTs(offset, count int) (list []*RankData, err error)
GetRankInfosNotTs 获取0~count跳记录 不根据更新时间来 该方法使用ZRange命令从Redis中获取指定范围的排名信息,不考虑更新时间 参数:
offset - 获取记录的起始偏移量 count - 获取记录的数量
返回值:
list - 排名信息列表 err - 错误信息,如果执行过程中遇到错误
func (*F64CountRank) IncrScore ¶
func (r *F64CountRank) IncrScore(id int64, score int64) (curScore float64, err error)
IncrScore 对指定ID的分数进行增加,并返回增加后的当前分数。 该方法首先更新成员的更新时间戳,然后增加成员的分数。
参数:
id - 要操作的成员ID。 score - 要增加的分数。
返回值:
curScore - 增加分数后的当前分数。 err - 操作过程中可能发生的错误。
IncrScore 先改redis再改cache
@Description: @receiver r @param id @param score @return curScore @return err
func (*F64CountRank) UpdateScore ¶
func (r *F64CountRank) UpdateScore(id int64, score int64) (err error)
updateScore 更新给定ID的分数值。
参数:
id - 需要更新分数的实体ID。 score - 新的分数值。
返回值:
error - 更新过程中可能出现的错误。
该方法首先记录当前时间作为更新时间戳,然后将新的分数值添加到排名系统中。 使用Redis的ZAdd方法来确保操作的原子性和一致性。 UpdateScore 更新分数
@Description: @receiver r @param id @param score @return err
type Mod ¶
type Mod struct { }
func (*Mod) CreateF64CountRank
deprecated
func (s *Mod) CreateF64CountRank(name string) *F64CountRank
CreateF64CountRank 创建一个排行榜实例 参数:
name: 排行榜的名称,通常代表一个赛季
返回值:
*F64CountRank: 返回一个指向新创建的F64CountRank实例的指针
Deprecated:Use pgk.Rank().CreateF64CountRank(fmt.Sprintf("rank:%v", 1))