go build による不必要なリビルド
CGO の呼び出しを伴う小規模なプログラムを扱うプログラマーは、go build や go run で過剰なビルド時間に遭遇することがよくあります。この時間のかかるプロセスにより、バイナリをキャッシュしたり、インクリメンタル ビルドでソース変更タイムスタンプを利用したりすることは妨げられます。
別のアプローチは、ビルドされたパッケージとメタデータを維持するキャッシュの実装です。このソリューションは、インクリメンタル ビルドとより高速な実行を提供し、go test -i や go build -i などのコマンドによるユーザー介入の必要性を排除します。2018 年第 1 四半期にリリース予定の
Go 1.10 には、このキャッシュ機能が組み込まれており、 go build と go install が大幅に高速化されました。キャッシュ ディレクトリは $GOCACHE 環境変数を介して構成でき、キャッシュされたデータは、キャッシュのログ ファイルに影響を与えることなく go clean -cache を使用してクリアできます。
Go コミュニティは、ビルド製品をキャッシュすることで、開発者のワークフローを簡素化したいと考えています。ビルド時間を短縮し、開発プロセスを合理化します。このキャッシュベースのアプローチは、ビルド出力をキャッシュして再利用するための推奨ソリューションとして採用されることが期待されています。
以上がGo 1.10 では、CGO を使用してビルドを高速化し、不必要なリビルドを排除するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。