Plan 9とGo言語のブログ

主にPlan 9やGo言語の日々気づいたことを書きます。

2016-04-01から1ヶ月間の記事一覧

Plan 9とATS

この記事はTumblrで公開されていました これは2016年4月の記事です。現在9legacyのパッチは修正されています。 うまくいかないメモ とても混乱しているので記録する。 MacとiOSのMailアプリは、どちらもTLS 1.0までしか対応していない 未対応の暗号スイート…

パッケージのimport pathを好みのURLにする

この記事はQiitaで公開されていました Goのパッケージ名は、リポジトリのURLをそのまま使うことが多いと思いますが、リポジトリはそのままで、別のURLをパッケージ名にすることもできます。 例えば、あるパッケージのリポジトリをGitHubに置いていて、リポジ…

atomicパッケージが必要な理由と使い方

この記事はQiitaで公開されていました 以下のコードは通常分かりづらいバグを持っています。 package main import ( "fmt" "runtime" "sync" ) type Counter int32 func (c *Counter) Inc() { *c++ } func main() { var c Counter var wg sync.WaitGroup for…

ゴルーチンで発生したエラーの返し方

この記事はQiitaで公開されていました ゴルーチンで並行実行中させた処理の中で、エラーが発生した場合にどう扱うかは割と面倒です。 package main import ( "io/ioutil" "log" "net/http" "os" ) func main() { c := make(chan []byte) go func() { res, er…