redis——队列

一、用list实现队列

rpush和lpop右进左出,lpush和rpop左进右出实现FIFO单向队列。

public class QueueTest<T> extends AbstractQueue {

    private String qName;
    public QueueTest(String qName){
        this.qName = qName;
    }

    @Override
    public Iterator iterator() {
        throw new UnsupportedOperationException();
    }

    @Override
    public int size() {
        return RedisUtils.llen(qName).intValue();
    }

    @Override
    public boolean offer(Object o) {
        return RedisUtils.rpush(qName,o.toString()) == 1;
    }

    @Override
    public Object poll() {
        return RedisUtils.lpop(qName);
    }

    @Override
    public Object peek() {
        return RedisUtils.lindex(qName,0L);
    }
}

二、用zset实现延迟队列

猜你喜欢

转载自www.cnblogs.com/wqff-biubiu/p/12298961.html
今日推荐