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

coo*_*ish 2 .net c#

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

Sim*_*one 7

对应于C"的方法fflush()Flush()FileStream类.

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

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

Flush(bool flushToDisk)
Run Code Online (Sandbox Code Playgroud)

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

你应该调用它传递true.