Open GoogleCodeExporter opened 8 years ago
There are very subtle locking issues in these areas and any changes to this
area must be done with care.
Can you provide concrete numbers for the speed improvement for these changes?
Can you also confirm that you never get "stuck" tiles that don't load with
these changes?
Original comment by kurtzm...@gmail.com
on 1 Jul 2013 at 1:22
I tried the changes for MapTileProviderArray and found no difference in speed.
I pre-cached all the tiles in zoom level 5 and then quickly panned in one
direction. Both ways the maps loaded tiles at about the same speed.
Additionally, I reviewed the logs and we actually used to use a
ConcurrentHashMap for mWorking but we found that it added unnecessary locking
overhead when we profiled the app. Since we don't have a high rate of
concurrency, a synchronized lock worked better for us.
The CopyOnWriteArrayList would probably be a good fit for mTileProviderList. I
don't think that would have any side-effects.
I just want to make sure also that you aren't getting confused by tiles that
are downloaded and tiles that are cached. Naturally, cached tiles appear almost
instantly whereas downloaded tiles take a few seconds. If you still think that
changes to the synchronization methods dramatically change the performance of
the maps, can you send some traces before and after the changes?
Original comment by kurtzm...@gmail.com
on 10 Jul 2013 at 8:35
Original issue reported on code.google.com by
ttbox...@gmail.com
on 28 Jun 2013 at 7:41