BT

Go 1.1が(安全に)前進

| 作者: Jeff Martin フォローする 16 人のフォロワー , 翻訳者 編集部N フォローする 0 人のフォロワー 投稿日 2013年7月4日. 推定読書時間: 2 分 |

原文(投稿日:2013/06/26)へのリンク

Go 言語のメジャーリリース 1.1 がベータレビュー期間の時点で発表された幾つもの新しいフィーチャの提供を完了した。多くの開発者は、コードを再コンパイルしたとたんに、その優位点に気づくだろう。一方他のフィーチャは新しいライブラリやパターンを使う必要がある。

 

パフォーマンス

パフォーマンス向上に関する詳細な情報を探している方は、GoのコントリビュータであるDave Cheney氏をあてにできる。彼は、Go 1.1のパフォーマンスがどれだけ増加したかを正確に詳述した記事の詳細なシリーズを書いている。 第1部では 、氏は測定にLinux/AMD64プラットフォームを使用したが、ベンチマークの大半は、Go 1.1で速度の増加を記録した。興味深いことに、GzipとGobEncodeのパフォーマンスがやや後退している。net/httpパッケージのベンチマークは、軒並み改善されているが、WindowsとFreeBSDプラットフォームは、Go 1.2までLinuxのパフォーマンスに追いつかないことに注意して欲しい。氏のシリーズの追加記事が i386ARM (Raspberry Piを含む)の結果を詳述している。

 

競合への精力的な取り組み

Goのツールセットに競合検出器という大きなものが加わった。これはメモリの同期エラーをデバッグする時に使う。競合状態は、2つ以上のスレッドが同時にデータ構造を操作しようとする時に、マルチスレッドシステムで発生する。特にGoの場合 「2つのGoルーチンが同時に同じ変数にアクセスし、アクセスの少なくとも一方が書き込みの時、データ競合が発生する」。バグの性質上、これらはしばしば見つけて修正することが難しい。この新しいツールは、そのプロセスを容易にしようとするものだ。現在競合検出器は、Windows、Linux、Mac OS Xプラットフォーム上の64ビットx86アーキテクチャ上で使用することができる。

 

Goを入手する

Goがサポートされている主要なプラットフォームには、 FreeBSD, Linux, Mac OS X, Windows, NetBSDがある。これら全ては、i386 と AMD64 アーキテクチャをサポートし、FreeBSD と Linux は更にARMをサポートしている。Goのインストール直接ダウンロードに関する説明は、golang.orgにある。(最新のリリースは Go 1.1.1で、メジャーリリース1.1へのマイナーなバグ修正 がなされているのに注意して欲しい。)

この記事に星をつける

おすすめ度
スタイル

こんにちは

コメントするには InfoQアカウントの登録 または が必要です。InfoQ に登録するとさまざまなことができます。

アカウント登録をしてInfoQをお楽しみください。

あなたの意見をお聞かせください。

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする
コミュニティコメント

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

HTML: a,b,br,blockquote,i,li,pre,u,ul,p

このスレッドのメッセージについてEmailでリプライする

ディスカッション

InfoQにログインし新機能を利用する


パスワードを忘れた方はこちらへ

Follow

お気に入りのトピックや著者をフォローする

業界やサイト内で一番重要な見出しを閲覧する

Like

より多いシグナル、より少ないノイズ

お気に入りのトピックと著者を選択して自分のフィードを作る

Notifications

最新情報をすぐ手に入れるようにしよう

通知設定をして、お気に入りコンテンツを見逃さないようにしよう!

BT