gpt4 book ai didi

java - Cursor 是否有独立的数据,或者它只是一个指向数据的指针?

转载 作者:行者123 更新时间:2023-11-30 04:43:16 26 4
gpt4 key购买 nike

我得到了 Gmail 客户端中的所有电子邮件:

final Cursor messages = getContentResolver().query(
Uri.parse("content://gmail-ls/conversations/" + mailAddress + "/"
+ String.valueOf(conversationId) + "/messages"), null, null, null,
null);

有一个问题...有时,当 Gmail 客户端尝试查看是否有新电子邮件到达时,同时我正在读取上面的光标,Gmail 崩溃并显示“IndexOutOfBoundException”。这种情况发生了超过一百次......在 1% 的时间里,更多。

第一个问题:我将尝试将消息 Cursor 复制到一个名为 copyCursur 的新 Cursor 中。

我不知道这个解决方案是否正确:例如,当我调用

messages.moveToLast();
  • A.它是否直接从“content://gmail-ls/conversations/”读取

  • B.或者 messages 是“content://gmail-ls/conversations/”中包含的数据的 COPY 本身?

因为如果 A,也许我的解决方案会获胜。否则如果B,我的解肯定是错的。

第二个问题:如何复制一个Cursor?对吗,如果我这样做:

Cursor copyMessages = new Cursor();
copyMessages = messages;

或者以这种方式我只有 copyMessages 是消息的“指针”?

非常感谢!

最佳答案

这是一个指针。如果您想遍历缓存数据,请使用 ContentQueryMap 类。

关于java - Cursor 是否有独立的数据,或者它只是一个指向数据的指针?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5562369/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com