LogRecordSequence.Flush 方法

定义

持久写入追加的记录。

重载

名称 说明
Flush()

确保已写入所有追加记录。 无法继承此方法。

Flush(SequenceNumber)

确保所有追加到指定序列号的记录以及包括该记录都已持久写入。 无法继承此方法。

Flush()

确保已写入所有追加记录。 无法继承此方法。

public:
 virtual System::IO::Log::SequenceNumber Flush();
public System.IO.Log.SequenceNumber Flush();
abstract member Flush : unit -> System.IO.Log.SequenceNumber
override this.Flush : unit -> System.IO.Log.SequenceNumber
Public Function Flush () As SequenceNumber

返回

写入的最后一条记录的序列号。

实现

例外

刷新数据时发生 I/O 错误。

在释放序列后调用了该方法。

不支持此操作。

没有足够的内存继续执行程序。

操作系统拒绝对指定日志序列的访问。

记录序列无法有足够的可用空间来包含新的重启区域。

指定的日志没有任何区。 必须先创建一个或多个盘区,然后才能使用记录序列。

注解

调用此方法可确保追加到 LogRecordSequence 已持久写入的所有记录。

适用于

Flush(SequenceNumber)

确保所有追加到指定序列号的记录以及包括该记录都已持久写入。 无法继承此方法。

public:
 virtual System::IO::Log::SequenceNumber Flush(System::IO::Log::SequenceNumber sequenceNumber);
public System.IO.Log.SequenceNumber Flush(System.IO.Log.SequenceNumber sequenceNumber);
abstract member Flush : System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
override this.Flush : System.IO.Log.SequenceNumber -> System.IO.Log.SequenceNumber
Public Function Flush (sequenceNumber As SequenceNumber) As SequenceNumber

参数

sequenceNumber
SequenceNumber

必须写入的最新记录的序列号。 如果此操作 SequenceNumber 无效,则必须写入所有记录。

返回

写入的最后一条记录的序列号。

实现

例外

sequenceNumber 对于此序列无效。

sequenceNumber 不在此序列的基数和最后一个序列号之间。

由于出现意外的 I/O 异常,无法执行请求。

指定的日志没有任何区。 必须先创建一个或多个盘区,然后才能使用记录序列。

无法执行该操作,因为记录序列是使用只读访问权限打开的。

在释放序列后调用了该方法。

没有足够的内存继续执行程序。

记录序列已满。

操作系统拒绝对指定日志序列的访问。

注解

调用此方法可确保包含序列号的所有记录都已持久写入并包括指定的序列号。

适用于