繁体   English   中英

如何在C#中执行fsync()?

[英]How to do fsync() in C#?

我正在开发一个与C#中的数据库相关的项目。 在每次事务提交之后,我希望db将所有缓冲的数据移动到磁盘上。 在Linux中,fflush()+ fsync()会提供我想要的东西。 为了达到同样的效果,我应该在C#中做些什么?

对应于fflush()FileStream类的 Flush()

无论如何,这与文件有关,而与数据库无关。

编辑
如果您的目标是4.0 .NET Framework,那么会有一个接受布尔值的新重载 根据其描述:

Flush(bool flushToDisk)

flushToDisk
键入:System.Boolean
如果刷新所有中间文件缓冲区为true; 否则,错误。

你应该调用它传递true

通常,在使用SQL Server之类的东西时,您无法控制数据库何时将数据写入磁盘。

您应该担心的是确保您的交易commit成功。

您使用的是哪个数据库服务器?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM