所以我有一个Trip
类和Place
类,它们都扩展ParseObject
并且它们之间有很多对多的关系。所以我使用的是ParseRelation
:
Trip trip = ...
Place place = ...
trip.getRelation('place_relation').add(place);
trip.saveEventually();
然后,我稍后会取这样的地方:
final ArrayList<Place> places;
ParseRelation<Place> placeParseRelation = trip.getRelation("place_relation");
ParseQuery<Place> placeParseQuery = placeParseRelation.getQuery();
placeParseQuery.findInBackground(new FindCallback<Place>() {
@Override
public void done(List<Place> objects, ParseException e) {
if (e != null) {
...
} else {
places = (ArrayList<Place>) objects;
}
}
});
我意识到因为我正在使用saveEventually()
,所以在它写入数据库和从数据库获取数据之间可能存在延迟,但实际上它应该<1秒才能正常保存。但是我发现在查询中返回Places
之前最多可能需要5分钟。结果出现之前需要花费多长时间,有时它几乎是即时的,就像我提到的,有时它可能是几分钟。我使用新的GenyMotion模拟器进行快速互联网连接。
为什么会发生这种情况的任何想法?