This repository has been archived by the owner on Aug 8, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
[core] Calculate GeoJSON tile geometries in a background thread #15953
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
pozdnyakov
added
performance
Speed, stability, CPU usage, memory usage, or power usage
Core
The cross-platform C++ core, aka mbgl
labels
Nov 20, 2019
pozdnyakov
force-pushed
the
mikhail_geojson_get_tile_in_bg
branch
2 times, most recently
from
November 22, 2019 12:05
d7b1623
to
e4bcfef
Compare
pozdnyakov
added
the
needs changelog
Indicates PR needs a changelog entry prior to merging.
label
Nov 22, 2019
tmpsantos
approved these changes
Nov 22, 2019
alexshalamov
approved these changes
Nov 22, 2019
pozdnyakov
force-pushed
the
mikhail_geojson_get_tile_in_bg
branch
from
November 22, 2019 14:54
e4bcfef
to
80c1b4f
Compare
pozdnyakov
removed
the
needs changelog
Indicates PR needs a changelog entry prior to merging.
label
Nov 22, 2019
pozdnyakov
force-pushed
the
mikhail_geojson_get_tile_in_bg
branch
5 times, most recently
from
November 26, 2019 14:41
b33ec4e
to
f68fc51
Compare
pozdnyakov
added
the
⚠️ DO NOT MERGE
Work in progress, proof of concept, or on hold
label
Nov 27, 2019
Invoking a thread per geojson source is not quite safe approach, as it can lead to OOM. Need to limit the possible amount of threads. |
pozdnyakov
force-pushed
the
mikhail_geojson_get_tile_in_bg
branch
2 times, most recently
from
November 28, 2019 17:20
b127015
to
e680408
Compare
pozdnyakov
removed
the
⚠️ DO NOT MERGE
Work in progress, proof of concept, or on hold
label
Nov 28, 2019
Fixed with e6804088f0799f5405a0053ce34b97c183dce90a |
Call `mapbox::geojsonvt::GeoJSONVT::getTile()` in a background thread, so that the rendering thread is not blocked.
The newly introduced `GeometryTile::reset()` is used while GeoJSON tile update in order to prevent from the parsing of the new data with the stale layers or vice verse.
pozdnyakov
force-pushed
the
mikhail_geojson_get_tile_in_bg
branch
from
November 29, 2019 08:35
e680408
to
da21ebe
Compare
Note for change log: Calculate GeoJSON tile geometries in a background thread, so that the rendering thread is not blocked. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
Core
The cross-platform C++ core, aka mbgl
performance
Speed, stability, CPU usage, memory usage, or power usage
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Call
mapbox::geojsonvt::GeoJSONVT::getTile()
in a background thread, so that the rendering thread is not blocked.Before:
After:
Fixes https://github.com/mapbox/mapbox-gl-native-team/issues/87