|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
public interface DGC
DGC インタフェースは、分散ガベージコレクションアルゴリズムのサーバ側に使用されるものです。このインタフェースには dirty と clean の 2 つのメソッドがあります。dirty メソッドは、リモート参照がクライアント内で非整列化操作がされたときに呼び出されます (クライアントは VMID で表わされる)。これに対応する clean メソッドは、そのリモート参照への参照がクライアント内になくなったときに呼び出されます。dirty メソッドが失敗した場合には、strong を true に指定した clean メソッドを呼び出して、その呼び出しの通し番号を保持する必要があります。このようにすれば、以降に分散ガベージコレクタから誤った呼び出しを受け取ったときにそれを検出することができます。 リモートオブジェクトへの参照は、その参照を保持するクライアントから一定の期間だけ貸し出されます。貸し出し期間は、dirty 呼び出しを受け取ったときから始まります。貸し出しが破棄される前に、クライアントが持つリモート参照に対して追加の dirty メソッドを呼び出し、貸し出しを更新するのはクライアントの役目です。クライアントが貸し出しを破棄する前に更新しなければ、分散ガベージコレクタは、そのリモートオブジェクトはもうクライアントから参照されないものと見なします。
メソッドの概要 | |
---|---|
void |
clean(ObjID[] ids,
long sequenceNum,
VMID vmid,
boolean strong)
clean メソッドは、ids で表される各リモートオブジェクト内の参照リストから vmid を削除します。 |
Lease |
dirty(ObjID[] ids,
long sequenceNum,
Lease lease)
dirty メソッドは、配列 ids に含まれるオブジェクト識別子に関連したリモートオブジェクト参照の貸し出しを要求します。 |
メソッドの詳細 |
---|
Lease dirty(ObjID[] ids, long sequenceNum, Lease lease) throws RemoteException
ids
- クライアントの呼び出しで参照済みとしてマークするためのオブジェクト IDsequenceNum
- シーケンス番号lease
- 要求した貸し出し
RemoteException
- dirty 呼び出しが失敗した場合void clean(ObjID[] ids, long sequenceNum, VMID vmid, boolean strong) throws RemoteException
ids
- クライアントの呼び出しで未参照としてマークするためのオブジェクト IDsequenceNum
- シーケンス番号vmid
- クライアント VMIDstrong
- 「strong」clean 呼び出しの作成
RemoteException
- clean 呼び出しに失敗した場合
|
JavaTM 2 Platform Standard Ed. 5.0 |
|||||||||
前のクラス 次のクラス | フレームあり フレームなし | |||||||||
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド |
Copyright 2004 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms. Documentation Redistribution Policy も参照してください。