package com.muyu.common.cache;

import com.muyu.common.cache.decoration.DecorationKey;

/**
 * @author DongZl
 * @description: 原子序列缓存基准
 * @Date 2024-4-1 下午 08:07
 */
public interface AtomicSequenceCache<K> extends DecorationKey<K> {

    /**
     * 获取存储的值
     * @param key 键
     * @return 值
     */
    public Long get(K key);

    /**
     * 自增
     */
    public Long increment(K key);
    /**
     * 自减
     */
    public Long decrement(K key);

    /**
     * 增加数值
     */
    public Long increment(K key, Long number);

    /**
     * 减少数值
     */
    public Long decrement(K key, Long number);
}
