FileCreate没有OPLOCK /机会锁定

时间:2014-07-30 12:24:26

标签: c++ caching networking file-io smb

我正在寻找一种在SMB2 Windows share上打开/创建文件而无需请求oplock(SMB2_OPLOCK_LEVEL_LEASE)的方法。带有FileCreate()标志的FILE_FLAG_NO_BUFFERING不会影响行为。

禁用重定向器中的机会锁定是不可取的选择。

有没有办法影响fileopen / filecreate不请求oplock?

2 个答案:

答案 0 :(得分:0)

你不能这样做。 Windows atomaticaly管理文件系统级别的opcloks。

答案 1 :(得分:-1)

实现这一目标有一个棘手的方法。打开相同的文件以从另一个应用程序中读取。如果在主文件创建之前执行此操作,则不应请求oplock。如果在主文件创建后执行相同的操作,则服务器应该破坏其oplock。

老实说,我并不完全确定Win的行为,但是明智的尝试imho。

祝你好运