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

c++の名前空間

C++

c++の名前空間,よくわかっていなかったのでちょっと実験してみた.c++の名前空間は,Javaのパッケージのような概念で,クラス名やグローバル変数などの,グローバルなスコープを持つ名前空間を分割するために用いられる.こういう仕掛けがないと,ライブラ…

Thread local と 実効ユーザIDの変更クラスのつづき

先日のエントリで書いた実効ユーザID変更クラスはマルチスレッドではうまく動かない.それだとちょっと困るので書き直してみた.そのために,threading の localを使った. threading local threading.localは各スレッドに固有の値を持たせためのしかけ.Jav…

Python with statement

Python の2.6からwith statement が標準機能となった.2.5でもfuture 機能として取り込まれていたので目新しくはないが,なかなか便利で,もう2.4には戻れない.with statementはtry, except, finally で実現できる構造をもう少し簡単に書けるようにしてくれ…

いまさらJava RMI

Javaで単純なクライアント・サーバをプロトタイプしなければならなくなった.非同期の必要はないし,独自にプロトコルを切るのも面倒なので久しぶり(10年ぶり?)にいじってみたら,昔と違って随分扱いやすくなっていた. スタブとスケルトン リモートオブジェ…

cURLpp

C++

cURLというプログラムがある.コマンド名は小文字のcurlでRIA用言語のcurlと紛らわしいのだが,こちらはwgetのようなプログラム.要するにコマンドラインからwebコンテンツにアクセスするツールなのだが,拡張可能なようでさまざまなプロトコルに対応してい…

HTTP PUT でファイルアクセス

HTTP のGETとPUTを使った簡単なファイルサーバがテスト用に必要になったのでPythonで書いてみた.Python標準のBasicHTTPServerのハンドラにはPUTもPOSTも実装されていないのだけど,拡張は可能になっている.実際,CGIHTTPServerではPOSTをサポートしている…