ブックマーク / golang.rdy.jp (2)

  • chanの使い方パターンメモ。

    chan使用パターンを記録するよ! chanは強力な仕掛けなんだけど、 道を踏み外すと道半ばで刺さる。 なので良かったパターンをメモっとく。 chanを扱う役割は5つある。 makeする役(maker) writeする役(writer) readする役(reader) closeする役(closer) 破棄する役(GC) これらを踏まえて抑えるべきポイントは read,write,closeは時間的にmakeからGCまでの間にしか存在してはいけない。 readerとwriterは基別のgoroutineであること。 closeはreaderに終了を通知するためのもの。 readerを終了させる最善の手はclose。 基writerとcloserは一蓮托生。 そうでなければcloseは使うべきでない。 chanは同期のための仕組みで、Mutexなどを併用するのは使い方がおかしい。 cha

    tek_koc
    tek_koc 2015/10/16
  • GopherJSの紹介

    Javascriptを書きたくないでござる!な人向け。 GopherJSってなに? Goの記述を100%Javascriptに変換してくれるツール。 サイト: http://www.gopherjs.org GopherJSの特徴 pure-GoなコードをJSの世界で動くように変換する。 goroutineやchanも論理的に動作するように変換。 外部バイナリ(.soなど)への依存のある実装の変換はできません。 CGOももちろんNG。 オンメモリ操作のパッケージなどは100%動く。 jsアーキテクチャとしてビルドされ、GOPATHを既存のものと共存可能。 GoGopherJS両対応のパッケージも増えてきた。 GopherJS対応ライブラリ honnef.co/go/js/dom github.com/goxjs/gl github.com/goxjs/glfw github.com/go

    GopherJSの紹介
    tek_koc
    tek_koc 2015/10/16
  • 1