問題タブ [static-polymorphism]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
87 参照

c++ - イベント/タスク処理のさまざまな方法

イベント/タスク インスタンスは、スレッド内の受信データに基づいて作成され、送信されて別のスレッドで処理されます。2 番目のスレッドでこれらのイベントを処理するさまざまな実装を測定しようとしています (静的ポリモーフィズムが必要です)。

std::variant対継承対他の方法 (パフォーマンス)からいくつかのベンチマークを取得して変更しました。アプローチの違いをさらによく理解するために、REPEATマクロを導入しました。今、私は2つの質問があります:

  1. 繰り返しなしで ie を使用#define REPEAT(x) xすると、なぜすべてのソリューションで同様の結果が得られるのですか (私は CRTP と概念のアプローチが勝者になると思います)。
  1. を使用#define REPEAT(x) REPEAT64(x)すると、以下に示す結果が得られます。CRTPおよびConceptsアプローチがアプローチと同様のパフォーマンスを示すのはなぜVirtualですか? また、そのアプローチは本当にホットループSwitchで最も効率的なものですか?while

ベンチマーク コード: