Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

プログラミング言語「Go 1.6」がリリース、HTTP/2をサポート

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/02/22 15:40

 米GoogleのGo言語開発チームは、7度目のメジャーリリースとなる「Go 1.6」を2月17日(現地時間)にリリースした。

 「Go 1.6」は、6か月前にリリースされた「Go 1.5」に大きな変更が加えられており、とりわけ大きな変更点としては、主要なWebブラウザベンダーやWebサイトで採用されている新プロトコルであるHTTP/2の、net/httpパッケージにおけるサポートが挙げられる。「Go 1.6」では、デフォルトでHTTP/2のサポートを有効にしている。

 テンプレートパッケージでは、テンプレートアクション周囲の空白を取り除き、クリアなテンプレート出力を実現したほか、テンプレートから他のテンプレートを作成できる{{block}}アクションが追加された。

 さらに、「Go 1.5」では実験的なサポートだった、さまざまな環境への対応を可能にするvenderディレクトリにも、デフォルトで対応する。

 ランタイムには、軽量なマップ誤使用の検出機能や、プログラム終了にともなうパニック発生を知らせる機能を搭載した。

 このほか、「Go 1.6」による変更にともない、cgoの利用にあたってはGoとCとのポインタ共有に関する留意が求められる。なお、linux/amd64版のコンパイラ、リンカ、およびGoのコマンドには、-raceに似た-msanフラグが用意されており、cgoのコードが新しいポインタのルールに対応しているかの確認に使える。

 なお、「Go 1.6」でビルドしたコードのパフォーマンスは、「Go 1.5」でビルドしたものとほぼ同じ。一方、ガベージコレクションによる停止は「Go 1.5」よりも長いが、プログラムが巨大なメモリ領域を利用している場合は、特筆すべき効果を発揮する。


【関連リンク】
Go(英語)

  • ブックマーク
  • LINEで送る
  • このエントリーをはてなブックマークに追加
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5