类事务
提供安全读取和写入Realm的范围。 必须通过BeginWrite()显式使用。
implements
命名空间: Realms
程序集:Realm.dll
语法
public class Transaction : IDisposable
备注
属性
| 编辑本页 查看源代码州
获取此事务的状态。
声明
public TransactionState State { get; }
属性值
类型 | 说明 |
---|---|
TransactionState | 事务的状态。 |
方法
| 编辑本页 查看源代码Commit()
用于保存对 Realm 的更改。 如果事务在using
区块中声明,则必须在该区块结束之前使用。
声明
public void Commit()
CommitAsync(CancellationToken)
用于保存对 Realm 的更改。 如果事务在using
区块中声明,则必须在该区块结束之前使用。 当更改有效写入磁盘时,此操作完成。
声明
public Task CommitAsync(CancellationToken cancellationToken = default)
参数
类型 | 名称 | 说明 |
---|---|---|
CancelationToken | cancelledToken | 可选取消令牌,用于停止等待返回的任务 。 |
返回:
类型 | 说明 |
---|---|
任务 | 一个可等待的任务,当提交的更改有效写入磁盘时完成。 |
备注
取消返回的任务不会阻止写入磁盘,但会立即解析任务并抛出 TaskCanceledException 异常。 事实上,提交操作无法停止,并会在背景继续运行直至完成。
取消此操作的一个使用案例是您希望向用户显示一个弹出窗口,指示正在保存数据。 但是,您希望在一定时间后自动关闭此类弹出窗口。 或者,您可能希望允许用户手动关闭该弹出窗口。
Dispose()
如果未显式提交,将在现有作用域上自动Rollback()事务。
声明
public void Dispose()
Rollback()
显式使用 来撤消事务中的更改,否则会通过退出区块来自动调用。
声明
public void Rollback()