C/C++

std::threadとstd::vectorでboost::thread_groupのようにスレッドをまとめて起動

最近C++でのスレッド処理の勉強をしていて,C++11(C++0x)からboostを入れなくてもthreadクラスが使えるようになったようなのでそちらを使ってみる.んで,同じような処理をするスレッドをまとめてcreate/joinできるようにしたいなーと考えて色々調べていたと…

filepointerの内容をistreamで受け取る

プログラム中で実行したコマンドの出力をストリームで受け取りたい. というのも,プログラム中でxzcatした出力を標準入力からきたもののように処理したいためである.とりあえずpopen()を使うことで,出力内容をファイルディスクリプタとして受け取ることが…

mapを使って形態素にidをふる

C++の標準ライブラリであるmapを使ってシンボルにidを振っていく方法をメモ.自然言語処理をしているため,今回はシンボル=形態素ということにして書いていく.以下のようなテストファイルに対して,重複なくidを振りたい. //test.txt 取材 の 帰り に 、 …

boostの手動インストールメモ

実験サーバに入っているのboostのバージョンがバージョンが古すぎたので,最新のバージョンのものを自分用にインストールしました. 背景 boost/tokenizer.hppをインクルードしてコンパイルしたら,以下のようなエラーがズザーっと出た. In file included f…

gcc4.6.2の手動インストールメモ

普段の研究にはPythonを用いているのですが,どうも大規模データを扱うには不向き(というか遅い)のでC++でコーディングすることにしました.とりあえず研究室の実験サーバの環境を知ろうと思って,gccのバージョンを調べてみたら4.1.2でした.2006年にリリ…