[PATCH] Concurrent fetching of primitives
|Reported by:||Don-vip||Owned by:||team|
|Version:||Keywords:||performance, multithread, multicore|
Description (last modified by Don-vip)
The OSM API usage policy allows us to use 2 download threads:
I have achieved to improve dramatically the performances in fetching a large number of primitives (I used as example the multipolygon 1155338 which contains more than 12k nodes). With this patch, download time fell from 3min50s to 1min42s on my machine !
However, I'd like to have some code review and some testing before committing.
I am particularly afraid of the handling of ProgressMonitor. I was expecting to get some ConcurrentModificationExceptions. I did not get any problem, but I don't know if I was lucky or if the code is OK :)