2.x branch optimization
@flippmoke がすでに取り組んでいます。
2018年1月17日 から。
評価
この issue はまだ評価されていません。
説明
I noticed that layer_map<CoordinateType> decode_tile(std::string const& buffer) at https://github.com/mapbox/vector-tile/blob/95c240bd8c8373bc0c06966a62565c5d73fdef73/include/mapbox/vector_tile.hpp#L62-L84 does not leverage pre-allocation optimizations. We should likely do:
diff --git a/include/mapbox/vector_tile.hpp b/include/mapbox/vector_tile.hpp
index c61640b..0e8c672 100644
--- a/include/mapbox/vector_tile.hpp
+++ b/include/mapbox/vector_tile.hpp
@@ -66,12 +66,13 @@ layer_map<CoordinateType> decode_tile(std::string const& buffer)
while (auto layer = tile.next_layer())
{
mapbox::feature::feature_collection<CoordinateType> fc;
+ fc.reserve(layer.num_features());
while (auto feature = layer.next_feature())
{
auto f = extract_feature<CoordinateType>(feature);
if (!f.geometry.template is<mapbox::geometry::empty>())
{
- fc.push_back(f);
+ fc.push_back(std::move(f));
}
}
/cc @flippmoke to review and apply if this looks good.
- 主要言語
- C++
- スター
- 52
- フォーク
- 33
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
mapbox/vector-tile のほかの issue
-
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
mapbox/vector-tile#46 · コメント 4 件 · リアクション 4 件 ·
-
1.x
難易度 4/5 3〜5日 初心者へのやさしさ 25/100
mapbox/vector-tile#45 · コメント 5 件 ·
-
2.x
難易度 5/5 1週間以上 初心者へのやさしさ 20/100
mapbox/vector-tile#43 ·
-
2.x
難易度 5/5 1週間以上 初心者へのやさしさ 30/100
mapbox/vector-tile#42 ·
-
Add Overzooming オープン2.x
難易度 5/5 1週間以上 初心者へのやさしさ 25/100
mapbox/vector-tile#41 ·
mapbox/vector-tile の issue をすべて見る
似ている issue
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
AXERA-TECH/ax-llm#77 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
games-on-whales/wolf#509 ·
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
-
bug-unconfirmed
難易度 2/5 1〜3時間 初心者へのやさしさ 76/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 74/100
NVIDIA/cuda-samples#453 ·