0

我的应用程序有一个奇怪的问题。

我必须将 DB 条目从电话 1 上的 DB 发送到电话 2 上的 DB。进程很智能,因为它只发送丢失的条目,所以如果在 DB 1 中有 10 个条目,而在 DB 2 中有 0 个条目,它发送 10 个条目,但如果电话 2 仅收到其中的 5 个(出于任何原因),则下次仅发送 5 个丢失的条目。条目与 UDP 消息一一发送。事实是,我在第一次尝试时永远无法在第二部手机上收到所有条目,我必须尝试多次,每次只能收到 3-4 个。消息没问题,我可以在发送端和接收端看到它们,所以我猜这是一个数据库问题!对于到达的消息率,数据库是否可能无法足够快地添加行?

4

1 回答 1

3

听起来好像您在发送数据库条目之间等待的时间不够长。您可以延长该时间,也可以在单个事务中执行所有插入。当您不使用事务时,插入完全有可能花费一秒钟以上。

   db.beginTransaction();
   try {
     // Insert all the records here
     db.setTransactionSuccessful();
   } finally {
     db.endTransaction();
   }
于 2013-02-21T17:33:07.483 回答