Lock
このインスタンス・メソッドは、データベース内のREFをロックします。
宣言
// C#
public bool Lock(bool bWait);
パラメータ
-
bWaitロックがno-waitオプションに設定されるかどうかを指定します。
bWaitがtrueに設定されている場合、このメソッドを呼び出してもREFがロックされるまで値は戻りません。
戻り値
ロックが取得されているかどうかを示すブール値。
例外
InvalidOperationException - 関連する接続がオープンされていません。
ObjectDisposedException - オブジェクトはすでに処理されています。
備考
OracleRefのFlush起動またはFlushCacheメソッドの後に、アプリケーションで適切にREFのロックを解除するには、アプリケーションがトランザクションをコミットまたはロールバックする必要があります。このため、OracleRefオブジェクトのロックを起動する前に、OracleConnectionオブジェクトのBeginTransactionメソッドを明示的に実行する必要があります。
このインスタンス・メソッドは、ネットワーク・ラウンドトリップを作成して、データベース内のREFをロックします。このコールの後、プログラマは、関連した行オブジェクトの属性値を排他的に変更できます。OracleRefのFlushインスタンス・メソッドまたはOracleConnectionのFlushCacheメソッドへのコールにより、データベースへの変更がフラッシュされます。
trueが渡されると、ロックが取得されるまでこのメソッドはブロックされ、値を戻しません。結果として、戻り値は常にtrueになります。
falseが渡される場合は、このメソッドはただちに値を戻します。ロックが取得されると戻り値はtrueを示し、ロックが取得されない場合は、戻り値はfalseを示します。