-
Task
-
Resolution: Unresolved
-
P3: Somewhat important
-
None
-
None
-
None
-
25
-
Foundation Sprint 132, Foundation Sprint 133, Foundation Sprint 134, Foundation Sprint 135
As discussed at the hacking day of Contributor Summit.
Will serve as the basis for asynchronous file I/O (ie QTBUG-136764) => all backends need to be asynchronous.
Not based on QIODevice, and will provide vectored read/writes (aka scatter/gather IO), the read/write requests are fulfilled fully asynchronously, using native APIs where available.
Random notes:
- Implement using io_uring on Linux
- Look into ioringapi from Windows
- Otherwise completion ports or overlapped io
- Potentially use grand central dispatch on macOS, but better if it also works on other BSDs
- QThreadPool based fallback for platforms with insufficient API or missing backend
To be implemented as an internal detail at first before we cement it and make it public.
- is required for
-
QTBUG-136764 Implement QAsyncFile / QFileV2 / ???
-
- Reported
-
- resulted from
-
QTBUG-129368 Research QFileV2 equivalent with async access from scratch
-
- Closed
-
- mentioned in
-
Page Loading...
For Gerrit Dashboard: QTBUG-136763 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
658765,10 | Add QRandomAccessAsyncFile and QIOOperation | dev | qt/qtbase | Status: NEW | 0 | 0 |
664630,3 | Simplify QIOOperation APIs | dev | qt/qtbase | Status: NEW | 0 | 0 |