问题标签 [persistent-storage]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
386 浏览

blackberry - 如何在黑莓的持久性存储中查找存储的对象的大小(以字节或 kb、mb 为单位)

我正在尝试查找存储在持久性存储上的对象的大小。我已经以编程方式找出了代码中显示的对象的大小,但是当它存储在持久性存储中时,我无法找出该对象的大小。数据在提交存储时是否会自动压缩。我正在使用 Memory.getFlashStats().getFree(); 在提交要存储的对象之前和之后获得持久性存储的空闲大小,两个值之间的差异应该等于我计算的对象的大小。请看代码

0 投票
2 回答
8427 浏览

java - 使用核心 api 消费后 HornetQ 消息仍保留在队列中

我是 HornetQ 的新手,所以请多多包涵。让我先告诉你我的要求:

我需要一个消息队列中间件,它可以在具有低延迟和持久性的不同进程之间传递大约 1k 大小的消息(即它应该能够在系统崩溃中幸存)。我将有多个进程写入同一个队列,并且类似地多个进程从同一个队列中读取。

为此,我选择了 HornetQ,因为它在持久性消息传递方面的评分最高。

我目前正在使用Hornetq v2.2.2Final作为独立服务器
我能够使用核心 api (ClientSession)成功创建持久/非持久队列,并成功将消息发布到队列(ClientProducer)
同样,我可以使用 core api (ClientConsumer)从队列中读取消息。

之后问题就来了,当客户端读取消息时,消息仍然保留在队列中,即队列中的消息数量保持不变。也许我弄错了,但我的印象是,一旦消息被消费 (read + ack),它就会从队列中删除。但这在我的情况下没有发生,并且一遍又一遍地读取相同的消息再次。

另外,我想告诉大家,我已经尝试过将非持久队列与非持久消息一起使用。但问题依然存在

我正在使用的生产者代码:

消费者的代码也是:

HornetQ 服务器配置 ::

0 投票
1 回答
2327 浏览

php - 在 PHP 中的请求之间存储对象而不进行序列化

我正在用 PHP 编写一个有状态的 Web 应用程序,其中状态可能包含很多对象。此时,我将所有这些对象保存在 $_SESSION 中,并在请求结束时将它们序列化。这有点痛苦,因为序列化整个会话需要几秒钟,而反序列化则需要更多时间。

我想尝试 APC,因为我希望这些对象只是被内存复制,而不是序列化。唉,似乎如果我提供apc_store($object)一个对象,它似乎无论如何都会在将它传递给另一个进程之前对其进行序列化。(故事是在没有序列化的情况下复制原始值和数组,但这对我来说不是一个相关的解决方案,因为我的会话对象有很多(循环)引用。)

我的问题:有没有一种已知的方法可以在 PHP 中保持对象的持久性,而不必在每次请求后对它们进行序列化?我听说HipHop解释器可以帮助解决这个问题,但我没有在网上找到任何工作示例。有人可以告诉我在 PHP 中是否可行?

(我知道,我应该用 Java 或其他支持没有 TCP 连接的持久实例的语言来编写这个项目)

0 投票
1 回答
329 浏览

blackberry - 在 BlackBerry 中使用持久数据创建高分屏幕

我正在尝试用 5 个字符串创建一个高分屏幕。我只想一次更新屏幕 1 个字符串,因为我创建了一个新的高分。如果没有新的或旧的高分,我只使用初始化的默认值 10。

我已经能够使用 BlackBerry api 并弄清楚如何创建 1 个完全有效的高分。但是,我完全坚持如何创建所有 5 个并在持久机制中对它们进行排序。我不想发布我的代码,因为在这一点上它是如此的一团糟,它将毫无用处。

作为参考,我尝试使用字符串 [] 而不是向量。

0 投票
3 回答
3641 浏览

iphone - iPhone核心数据默认使用哪个持久化存储

我正在我的应用程序中创建多个持久存储,但我只使用一个持久存储协调器和托管对象模型。现在我的问题是当我在托管对象上下文上调用 save 方法时,它将使用哪个持久存储来保存对象。所以我想指定用于保存对象的持久存储。同样,从数据库中获取对象时,我想确保我的获取查询应该在特定存储上执行,以便我只从该存储中获取对象。有什么帮助吗?

0 投票
3 回答
3505 浏览

objective-c - 核心数据:商店不能保存实体实例(可可错误:134020)

这是最奇怪的错误。互联网表明这是针对老虎的问题;除了我实际上针对的是 iOS 3 和 4。

在出现此错误之前,我正在向 Core Data 添加大量数据,但我保存了两次(一次在中间,然后在最后一次)。第一次保存后一切都很好,这是导致问题的第二次保存,所以我将在第一次保存之后但在第二次保存之前发布我正在使用的代码。

我在 NSManagedObject 子类上调用的便捷方法可以在这里找到。

我在应用程序的其他地方(运行很久之后)有可以添加/编辑/删除上面引用的所有实体的方法。错误不会每次都发生在同一个实体上。

任何帮助将不胜感激!这是一个棘手的问题。

0 投票
2 回答
711 浏览

blackberry - RecordStore 或 PersistentStore 在黑莓上保存数据?

为 Blackberry 应用程序保存数据的最佳解决方案是什么?

0 投票
5 回答
947 浏览

ios - 如何保存 PersistentStore

我有以下问题:

我有一个以 UITableView 作为根视图的应用程序。在这个 tableView 中有不同的条目,对于每个条目(可以由用户创建),我还向我的应用程序添加了一个持久存储。

所以,当我从头开始应用程序(没有保存数据等)并添加一个条目时,persistentStore 也被创建,当我单击 tableViewCell 时,我可以将数据保存在这个生成的 persistentStore 中。如果我正在创建一个条目并在单次运行期间观看该条目,这很好用。

如果我关闭应用程序并重新启动,单击同一条目,我会收到以下错误消息:

* 由于未捕获的异常“NSInvalidArgumentException”而终止应用程序,原因:“* -[NSArray initWithObjects:count:]: 尝试在对象 [0] 处插入 nil 对象”

所以似乎我想添加一个实际上是 nil 的商店,因为(我猜是这样)系统在这个给定的 storeURL 下找不到任何商店(这与我在第一次运行时创建商店的地方相同) .

所以我猜persistentStore 在第二次运行中不存在,因此在创建它的第一次运行中没有正确保存。

那么,在我添加持久存储之后,如何将持久存储保存到持久存储协调器中呢?

更新:

我想我已经确定了主要问题。第一次运行后,persistentStoreCoordinator 发生了变化。那么如何在关闭应用程序之前保存所有这些内容(managedObjectContext、persistentStoreCoordinator)?

有人可以帮助我吗?

更新 2

这是我创建商店的方式:

更新 3 因此,经过大量测试,这是我的结果:

  • 商店的创建工作正常。我可以创建多个商店,只要我在我的应用程序的一次运行中,我就可以访问和填充它们。

因此,随着我的应用程序的重新启动,某些事情正在发生变化。我认为错误必须与 managedObjectContext、persistentStoreCoordinator 或商店的 SAVING 相关联。

我是否应该更改我的应用程序委托中的任何设置以设置 managedObjectContext 或 persistentStoreCoordinator?

谢谢!

0 投票
3 回答
2803 浏览

c++ - c++ win32如何存储持久化数据

我正在开发一个 c++ win32 应用程序,我想在其中实现持久存储。我知道我可以使用文件系统或数据库或注册表,但是存储以下内容的最佳方法是什么:

只有在应用程序启动和关闭时,我才需要从存储中读取/写入。

这是一个用户级应用程序,数据应按用户存储。我想存储应用程序首选项(轨迹栏位置、一些设置、运行次数……),因此无需导入/导出设置和故障排除。

哪种存储方法最适合此类数据?

0 投票
1 回答
181 浏览

blackberry-eclipse-plugin - 当我使用持久对象在黑莓上保存数据时出现错误未捕获内存?

我使用 Persisten Object 来保存数据,但是当我在模拟器上运行我的应用程序时,出现错误对话框

并在真实设备上运行,加载和运行需要很长时间。我做错了什么?请帮我