Comments (1)
For the record here is some more information regarding the difference between SYNC
and SYNCHRONIZE
.
What SYNC means for Java NIO
In the Java world, SYNC
is used as a flag during creation of a file handle to request every change to be persisted immediately without caching etc:
Requires that every update to the file's content or metadata be written synchronously to the underlying storage device.
What SYNCHRONIZE means for Microsoft
In the Microsoft world, the SYNCHRONIZE
access right is defined as:
The right to use the object for synchronization. This enables a thread to wait until the object is in the signaled state.
~ Source
This sounds a lot like the wait/notify mechanism in the Java world. I.e. the filehandle can be used as a semaphore.
Each time an I/O operation is started, the operating system sets the file handle to the nonsignaled state. Each time an I/O operation is completed, the operating system sets the file handle to the signaled state.
~ Source
More on this topic can be found here.
How to request uncached write using win32 APIs
What comes closest to the Java SYNC
flag is probably FILE_FLAG_WRITE_THROUGH
or FILE_FLAG_NO_BUFFERING
as defined in the win32 file API.
from dokany-nio-adapter.
Related Issues (20)
- Add option to use custom mount options HOT 2
- Migration to JDK 11 HOT 1
- Wrong UNC name HOT 3
- Shutdown hook never invoked
- Handling of `FILE_NO_INTERMEDIATE_BUFFERING` HOT 1
- Add Cryptomator-Icon to Drive HOT 8
- Too Long File Names Error Code Support
- Google Drive File Stream: Certain applications do not write to file HOT 6
- Add method to API to check if there are open handles
- Windows CMD access the wrong folder HOT 1
- Windows tool XCOPY: File metadata preservation issue
- FindFilesWithPattern: Wrong pattern matching HOT 1
- Unable to stream video files with VLC HOT 1
- Impossible to mount more filesystems than number of CPU cores HOT 1
- Delegate revealing a drive to the API consumer HOT 3
- Default mount options are used if none are given HOT 1
- Observe status of mounted filesystem
- Relax condition of successful mount
- Migrate to Dokany 2.x HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dokany-nio-adapter.