無事で何より。
コードをボリボリと書いてみたり、ファイルディスクリプタに悩んでみたり。 昼はテレ朝通りの GOLCOM の横の am/pm 前の、店先のドア全開に開けまくった店で「夏風カレー」。 御飯のお代わりオッケー。
fork() して daemon になるプロセスの場合、普通は stdin, stdout, stderr を閉じなければならない。 Perl のプログラムでモジュール (.pm) の読み込みに失敗したりした場合の通常 stderr に出力されるメッセージは、daemon のような close(STDERR) した状態ではどこにも出すことができなくなり、知る術がなくなってしまう。 調べてみたところ、「>& FILEHANDLE」という具合に、Bシェルのリダイレクトみたいなことができるらしい。
open(NONSTDOUT, "> nonstdout"); # ファイルに書き出すようにして open(STDOUT, ">&NONSTDOUT"); # STDOUT を NONSTDOUT にリダイレクト open(STDERR, ">&NONSTDOUT"); # STDERR を NONSTDOUT にリダイレクト
こうすれば安全に Perl のエラーメッセージをファイルに書き出せる、っと。
サムスンすげーっ、17インチモニターついて2.99グラムっすか。(笑) 17インチ PowerBook G4 が 3.13キログラムなので、約15%軽いってことっすか。 15%軽いっていうのはけっこう頑張った気がするが、3kg程度であることには変わりないわけで、持ち運びは決して楽じゃいないだろうな。