coder-dongjiayi / MXLogger

MXLogger 是基于mmap内存映射机制的跨平台日志库,支持AES CFB 128位加密,支持iOS Android Flutter。核心代码使用C/C++实现, Flutter端通过ffi调用,性能几乎与原生一致。 底层序列化使用Google开源的flat_buffers实现,高效稳定。
Other
142 stars 18 forks source link

是否需要暴露flush方法? #17

Closed mml237 closed 1 year ago

mml237 commented 1 year ago

据了解,mmap机制的同步时机为:

那么如果我有个上传日志的需求,是否需要在上传日志前调用flush方法,确保内存中的数据全部写入到文件中?

coder-dongjiayi commented 1 year ago

不需要再上传日志的时候调用flush。

据我测试 这个方法大概率用不到,只有一些极端情况下有可能遇到,比如果 你程序预测到下一个瞬间手机可能没电要关机了,你可以flush 一下,确保内存数据写入磁盘。再比如说 内核突然挂了。。。目前在ios和android平台 我觉得你用不到这个方法。