
エントリーの編集

エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
Go言語でのインターフェースの遅さ - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています

- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
Go言語でのインターフェースの遅さ - Qiita
TL;DR Go 言語において: 関数のパラメータに構造体を渡したい場合、実体コピーで渡すよりポインタを使用... TL;DR Go 言語において: 関数のパラメータに構造体を渡したい場合、実体コピーで渡すよりポインタを使用したほうが速い。 ポインタのダウンキャストはオーバーヘッドが存在する。 インターフェースを介したメソッド呼び出しはかなり高コスト。 これらはどれも C/C++ や Java で同様の思い当たることがあるだろう。3 に関しては少し影響が大きいように見受けられ、パフォーマンスを目的として Go 言語を採用したのであればオブジェクト指向や責務の分担といった設計と両立が難しいコストとなるかもしれない。 なお筆者は Go 言語やランタイムの構造にあまり詳しくない点に注意。 経緯 以下のようなコードでパラメータの型 Image が比較的大きな構造体のポインタとなるインターフェースの場合にパフォーマンスはどうなのかという話がまずあり。 このケースに対する結果は実体コピーで渡すよりポインタで渡すほう