Realm-java的重大问题,慎用!

Realm数据库如果存储内容多了可能会引致OOM问题,直接抛出RealmError(注意是UnChecked Error级别的,子线程和try catch通通拦不住),请各位一定小心使用。

github上有相关的issue:https://github.com/realm/realm-java/issues/1680

stackoverflow:

http://stackoverflow.com/questions/38051678/realm-android-application-crash-io-realm-exceptions-realmerror-unrecoverable-e

http://stackoverflow.com/questions/31510545/io-realm-exceptions-realmerror-unrecoverable-error-mmap-failed-out-of-memor

官方的建议给出的居然是要做好内容优化。这个...

这个Realm在底层的实现原理有很大关系,底层C++调用了mmap,将大量数据内容映射到了内存。。。,这其中的风险,难道不应该警示一下开发者吗?

然而官网的文档对此只字未提。。。

总之,realm api看似不错,千万慎用,就算用,也不要存太多东西。似乎存储上限是25MB,此数据精确性有待核实。

贴出这个异常:

Realm-java的重大问题,慎用!_第1张图片

你可能感兴趣的:(Realm-java的重大问题,慎用!)