POEは、Perlで複数の擬似プロセスを作るのが簡単です。Perlで複数の処理を別々に実行するには、forkを使うのが定番でした。 #!/usr/bin/perl use strict; use warnings; my $pid = fork(); if ($pid) { # parent print "Hi, I'm parent. My PID is $$\n"; waitpid $pid, 0; print "I'm parent. kid $pid exited.\n"; } elsif ($pid == 0) { # kid print "Hi, I'm kid. My PID is $$\n"; } else { die "cannot fork() $!"; } exit; 実行結果は次の様になります。 Hi, I'm parent. My PID is 88225 Hi,
POEはevent-drivenなmultitasking frameworkです。最近では名前こそ知られてきたものの、(上級者を除くと)広く使われてはいません(ただし歴史は長いし、採用事例もたくさんあります)。なぜかというと、かなーり奥が深くて、ドキュメントが膨大で、しかもソースコードの上から順に実行される一般的なPerlプログラムと大きく異なるイベント駆動なフレームワークだからでしょう。自分も、「なんかPOEってすごいらしいよ」と耳にしてから少しずつ勉強していたんですが、どーも理解が進まなくて苦労しました。そんな最初のハードルを低くするような文書が欲しかったので、書いてみることにします。 POEは、event-drivenなプログラムに最適です。event-drivenなプログラムとは、何らかのイベントが起きたらなんらかの処理をする、そういうプログラムです。例えば、GUIアプリケーショ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く