[PHP-users 10109] 【質問】pcntl_fork();について

Akio Torikoshi php-users@php.gr.jp
Fri, 13 Sep 2002 22:09:57 +0900


 はじめまして、鳥越@シーズと申します。


 PHPで、メールまとめ送信のような思い処理をバックグラウンドで走らせたい
と思い、Perで言うところのfork関数を探しましたが、標準ではありませんでし
た。

 そこで、ネットを調べたところ、

http://php.benscom.com/manual/ja/ref.pcntl.php

 に、PHPのプロセス制御関数のことが紹介されていたので、

 バージョンアップついでに、--enable-pcntl オプションをつけて、PHPを
再コンパイルしました。

アップデートしたPHPのバージョンは、4.2.3
OS:SunOS 5.8
Server version: Apache/1.3.26 (Unix)

 です。


 これで、pcntl_fork() 関数が使えると思い、
サンプルプログラム(http://www1.mobusu.com/tmp/bar.php)
を走らせてみたところ、なぜか、以下のエラーが出てしまいました。

Fatal error: Call to undefined function: pcntl_fork() in /home1/www/htdocs/tmp/bar.php on line 6


 http://www1.mobusu.com/tmp/info.php

 で、コンパイル時のオプションを見ると、--enable-pcntl が正しく指定され
ています。


 なぜ undefind なのでしょうか? コンパイル時の指定の他に何か必要なライ
ブラリなどがあるのでしょうか?

 参考までに、サンプルプログラムのソースを添付しました。


 ご意見、アドバイスなどいただけたら幸いです。
 どうぞよろしくお願いいたします。




--------- bar.php -------------
<html>
<body>

<?php

$pid = pcntl_fork() ;

if( $pid == -1 ) {
	die("could not fork") ;
} elseif( $pid ) {
	echo "Parent Process." ;
} else {
	echo "Child Process." ;
}

?>

</body>
</html>






 _ _ _ _ _ _ _ _ _ _ _ _ _    ____________________________________
|1|2|3|4|5|6|7|8|9|0|-|^|\|  / --- Programmer  Akio Torikoshi --- /
 |Q|W|E|R|T|Y|U|I|O|P|@|[|  / --- Email: torikoshi@seeds.co.jp - /
  |A|S|D|F|G|H|J|K|L|;|:|  / --- http://www.seeds.co.jp/  ----- /
   |Z|X|C|V|B|N|M|,|.|/|  / --- Phone: 03-5815-7360 ---------- /
    ~ ~ ~ ~ ~ ~ ~ ~ ~ ~   ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~