タグ

golangとchanに関するslay-tのブックマーク (4)

  • WebSocketとGoroutineによるリアルタイムのグラフ表示 – (2)サーバサイド | DevelopersIO

    はじめに 前回はWebSocketとGoogle Chartsを使用したクライアントサイドについて書きました。今回はツイートを受信し、指定された単語の出現回数をカウントし、WebSocketでクライアントに送信するサーバサイドについてです。 サーバサイドの実装 サーバサイドはGolangを使用しました。大きく分けてmain処理、WebSocket、共通処理に分かれます。一つずつソースを載せていこうと思います。 main処理 まずはmain処理のソースです。以下のようになります。 main.go package main import ( "flag" "fmt" "html/template" "net/http" "net/url" "os" "strings" "アプリのフォルダパス/util" "github.com/ChimeraCoder/anaconda" ) var twee

    WebSocketとGoroutineによるリアルタイムのグラフ表示 – (2)サーバサイド | DevelopersIO
  • Go言語の並行性を映像化する | POSTD

    Goというプログラミング言語の強みの1つは、 Tony Hoare考案のCSP に基づくビルトインの並行性(Concurrency)です。Goは並行性を念頭にデザインされているため、複雑に並行したパイプラインの構築を可能にしています。でも、それぞれの並行性パターンがどのように見えるものなのか気になったことはありませんか。 もちろん、気になったことはあると思います。恐らくそれぞれ形は違っても、誰もが頭に描いているのではないでしょうか。もし、「1から100までの数字」について聞かれたら、無意識に頭の中で数字のイメージを思い浮かべると思います。例えば、私の場合、自分の前から1から20までがまっすぐに並び、21以降は90度右に曲がり1000以降まで続くイメージが浮かびます。これは多分私が幼稚園の時に教室の壁に沿って数字が貼られていて、ちょうど角に数字の20があったからなのだと思います。別の例えをす

    Go言語の並行性を映像化する | POSTD
  • golang で streem を実装した。 - Qiita

    この記事は Go Advent Calendar 2014、16日目の記事です。 はじめに Matz さんが streem という、ストリーム指向言語の開発を始めるらしいです。 まだ文法の設計段階ではあるけど、それなのにかなりの量の pull-req がバンバンと来てて凄いなーと思いつつも「この pull-req 量だと僕には出番無いなー」と思ったので、README.md に書かれているサンプルだけを頼りに streemgolang で実装してみました。 先日はネタで streem のマネをして yacc 定義部分だけ公開していましたが、日ネタが無い中にTLがヒートアップして焦りに焦って勢いで実装してみました。いやはや異様な追い込みを感じます。。。 まずは streem を知る streem は README.md に書かれている通り並列実行を行いつつストリームを処理する言語です。

    golang で streem を実装した。 - Qiita
  • Big Sky :: golang で N 個の chan を同時に待つ

    « C++ 製 micro web framework「crow」を使って lingr の bot 書いてみた。 | Main | Windows でも色付きでログが出せる golang のライブラリ「go-colorable」書いた。 » あと最近の発見と絶望は、C.selectが呼び出せないこと。select中のdefaultでnonblocking相当にできるけど、可変数なfdをselectしたい相当をどう書けばいいんだろうか。 #golang — HiroakiKawai (@kwi) July 28, 2014 reflect.Select を使います。 package main import ( "fmt" "math/rand" "reflect" "sync" "time" ) func multpleSelect(chans []chan bool) (int, bool

    Big Sky :: golang で N 個の chan を同時に待つ
  • 1