golang
goroutine は GOMAXPROCS >= 2 の場合は OS の thread も使って動くので、 そもそもgoroutineはスレッドじゃない。 そう、goroutineはスレッドじゃない。Big Sky :: 非同期UI この部分はちょっと誤解を招くかもなあと思いました。実際に複数の goroutine か…
via #golang でマルチコアをつかいきれた人っているの? http://twitter.com/tokuhirom/status/6229784117 # 何か、以下のような意味じゃない気もするんだけどとりあえずお互いに無関係な (フィボナッチ数を求める) goroutine を 3つ走らせて、それに対して環…
同じ機能を両方で書いてみたらどんな感じになるかなと。 起動されたコマンド名から SHA1 or MD5 を求めるように切り替わる コマンドライン引数があれば引数のファイルについて、なければ標準入力からの入力について SHA1(MD5) hash を求めて表示 こんな仕様…
perl でいうと、Test::TCP::empty_port() が欲しかったのでちょっと書く。 import ( "net"; "fmt"; ) func empty_port() int { for port := 10000; port < 20000; port++ { addr := fmt.Sprintf("localhost:%d", port); l, err := net.Listen("tcp", addr); …
54行で分散KVSを実装する(レプリケーション機能付き)をみて、Go でとりあえず分散もレプリケーションもしないのを書いた。といっても rpc ライブラリは付いてきているので、それを使うだけ。http://golang.org/pkg/rpc/ サーバ側の保存は map[string] stri…
http://d.hatena.ne.jp/tokuhirom/20090710/1247196134 この Coro の例を Go でやってみます。まず特定数 (ここでは 3) の worker thread を立ち上げておいて、そこにメッセージを送って仕事させるモデル。メッセージのやりとりに Coro::Channel を使います…
http://d.hatena.ne.jp/tokuhirom/20091117/1258418742 をみて。 Go に付いてくるテンプレートエンジンは json-template て奴でした。 記法は リファレンス にありますが、テストケース を眺めると雰囲気がつかみやすいかも。こんなコードを書いて package m…
8g とか 6l とかのコマンドが (分かりにくい|打ちづらい) ということに定評のある Go ですが、パッケージを作るような場合は Makefile をこんな風に書くと make 一発でことが済むので簡単です。via http://blog.yappo.jp/yappo/archives/000697.htmlでもちょ…