>>154
>サーバーがfork()で別の環境を作っている場合、それぞれ作業中の
>Prolog同士でデータベースの更新時にメッセージを交換して、情報を
>共有しなくてはならない。
きびしい指摘ですね。実は私のところでは更新を許可されたユーザは
一人、一端末に限定しています。したがって参照するユーザは入り直せば
最新にほぼ近いデータが参照できるでしょう、という考え方です。
しかし、これではシステムとしては制限がありすぎてしかも不完全です。
それで、現在は全く使ってはいませんが、SMTPとPOP3を利用して、更新時に他の
ユーザにmailで同報し、各ユーザはインタプリタのトップ、質問の実行の
冒頭にmailから取り出し、メールの中の質問を優先することによって、
データベース更新の同期をとるという機能をもっています。
fork()された環境がどのメールアカウントからメールを引けばよいか、などの
記述部分が複雑になりますが、TTY端末からの全く独立した環境でも、
fork()され、子タスクとして立ち上がった環境でも共通して利用でき、
少なくとも実験レベルでは成功しています。