nsq源码分析backend_queue.go
2020-02-07 11:44
696 查看
backend_queue.go
// BackendQueue represents the behavior for the secondary message // storage system type BackendQueue interface { Put([]byte) error ReadChan() chan []byte // this is expected to be an *unbuffered* channel Close() error Delete() error Depth() int64 Empty() error }
类是对数据和方法的抽象和封装,那么接口就是对类的抽象。
使用接口的好处是非常灵活,这样就与具体的实现做了解耦,如果以后有其他的实现类,只需要实现接口就可以了,而不用去改使用的时候的代码。
- 点赞
- 收藏
- 分享
- 文章举报
相关文章推荐
- nginx源码分析—队列结构ngx_queue_t
- golang.org/x/mobile/exp/gl/glutil/glimage.go 源码分析
- JDK源码分析-PriorityBlockingQueue
- goleveldb源码分析-key的存储和构成
- 源码分析-PriorityBlockingQueue
- go源码分析:strings包
- Java 容器源码分析之ArrayBlockingQueue和LinkedBlockingQueue
- 死磕 java集合之LinkedTransferQueue源码分析
- 死磕 java集合之DelayQueue源码分析
- IOS开发源码阅读篇--FMDB源码分析3(FMDatabaseQueue+FMDatabasePool)
- Python:线程、进程与协程(3)——Queue模块及源码分析
- Java核心复习——J.U.C ArrayBlockingQueue源码分析
- go database/sql 源码分析 -题外篇
- PriorityQueue优先级队列源码分析
- Raw-OS源码分析之消息系统-Queue_Size
- 死磕 java集合之ArrayBlockingQueue源码分析
- Go Revel - server.go 源码分析
- go-home源码分析----一款针对12306的火车票订票软件
- ConcurrentLinkedQueue的实现原理和源码分析
- jQuery 源码分析笔记(7) Queue