next up previous contents index
Next: 解決方法 Up: ループへの対処 Previous: 生成

問題点

元の外部参照オブジェクト側に中断ゴールがフックしている間は, リプライ・オブジェクトからのポインタは意味がある. 変数が具体化され, %answer_value が送信され, ゴールは実行を再開し, ループの回収されることが期待される (図10.10 (4), (5)).

しかし中断ゴールが多重待ちの場合は %answer_value を受信することなく ゴールが実行を再開するかもしれない. そして変数は具体化されないかもしれない. この場合, ループは「(局所処理では) 回収できないゴミ」となってしまう (図10.12). 「変数が具体化されない」という状況は, 非決定的処理あるいは見込み計算を 行うプログラムの実行ではいくらでも起こりうることである. 特別のことではない.


  
Figure 10.13: 読出し処理によって生まれたループの回収.
\begin{figure}
\setlength{\unitlength}{1.0mm}
\begin{center}
\begin{picture}
(1...
...ェクト}を解放し {{\tt\%release\/}} を送信した. }\\
\par\end{center}\end{figure}



Sekita Daigo
1998-05-18