3
我正在研究需要一些緩存管理的內容交換庫。例如,用戶可以發佈數據設計緩存管理API
ContentPtr *publish(char *data, ssize_t length);
ContentPtr *publish(FILE *fd);
調用後數據保存在內部緩衝區中,並返回指向該內容的指針。內容可以與ContentPtr
boolean remove(ContentPtr *cPtr);
被刪除,因爲用戶可以發佈大量的數據,我想補充一個高速緩存管理模塊,以支持像LRU,FIFO,無
- 高速緩存策略(拒絕出版,當緩存已滿)
- 緩存大小控制
因爲我從來沒有見過/使用的任何庫高速緩存管理,我不知道最佳實踐是設計這樣的API。任何人都可以推薦一些具有良好緩存管理API的庫?
一些可能的解決方案:
void configPolicy(enum Policy p);
void configPolicy(int flags);
//使用一些標誌和做同樣的事情到fcntl()
void configSize(ssize_t size);
//大小= -1,如果沒有限制void configSize(string size);
//支持16M
或1G
非常好的問題! –