1

我想使用 RMS 来存储大量数据。我已经检查到一定的限制。我只是想确保 RMS 能够存储它吗?

我在 RMS 中存储了大约 1,35,000 个字符,我还可以从 RMS 中获取它们。使用 RMS 可以存储多少数据?

我想在 Live Application 中实现它。

4

1 回答 1

4

RMS 存储容量没有这样的固定限制。这完全取决于设备上有多少可用内存。

在您的应用程序中尝试以下代码片段以查找设备上的内存状态。

Runtime rt = Runtime.getRuntime();
long totalMemory = rt.totalMemory();
long freeMemory = rt.freeMemory();

// if rs is an instance of your App's RMS
// then, try
RecordStore rs = RecordStore.openRecordStore( "App_Db_Name_Here", true );
int sizeAvailable = rs.getSizeAvailable();
// it returns the amount of additional room (in bytes) available
// for this record store to grow.

比较上述三个值并在您的应用程序中进行相应的处理。

但 RMS IO 操作会随着大小的增长而变慢,因此此类本地数据库不用于存储大数据。同样,这因设备而异。在跨设备移植应用程序时,您应该做出实施决策。

请参阅RecordStoregetSizeAvailable()文档以获取完整说明。

于 2012-12-25T14:05:18.823 回答