microsoft / microsoft/WindowsAppSDK
Provide a new version of Windows.Storage.FileIO which doesn't go through Runtime Broker when possible
Nobody has claimed this yet.
- Dominant language
- C++
- Stars
- 4.7k
- Forks
- 471
- Avg merge
- 3d 13h
- Merged PRs (30d)
- 28
Description
# Proposal: Provide a new version of Windows.Storage.FileIO which doesn't go through Runtime Broker when possible
Today any Windows.Storage.FileIO call will go through the Runtime Broker even if the app has direct access to the file (eg: a file inside the AppData folder for the current app) which is not needed and directly accessing will be faster.
## Summary
There's the PathIO class for that but when I'm writing a third-party library, I don't really a know whether the calling app has direct access to a specific StorageFile or that it needs a Runtime Broker call. It would be better if FileIO checks whether the app actually has direct access and redirect to PathIO or similar "direct access" APIs if it does for better performance.
# Rationale
* Better file system performance for directly accessible files using FileIO.
* Developers don't need to worry whether it's a directly accessible file or a brokered StorageFile and can call the same API.
## Scope
| Capability | Priority |
| :---------- | :------- |
| This proposal will allow developers to use FileIO on any StorageFile instead of going to PathIO for better performance if the file happens to be accessible directly by the process | Must |
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
No files, tests, or entry points are named. Start by comparing the Windows.Storage.FileIO and PathIO APIs and the Runtime Broker behavior described in the proposal. Done would require a settled API design and clarified scope for choosing direct access when possible.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- cpp
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100