mirror of
https://github.com/LadybirdBrowser/ladybird.git
synced 2025-08-13 11:39:43 +00:00
Kernel: Add simplistic work queues
We can't use deferred functions for anything that may require preemption, such as copying from/to user or accessing the disk. For those purposes we should use a work queue, which is essentially a kernel thread that may be preempted or blocked.
This commit is contained in:
parent
314f04b896
commit
20cccda731
Notes:
sideshowbarker
2024-07-18 21:12:02 +09:00
Author: https://github.com/tomuta
Commit: 20cccda731
Pull-request: https://github.com/SerenityOS/serenity/pull/5865
Reviewed-by: https://github.com/bgianfo
Reviewed-by: https://github.com/supercomputer7
7 changed files with 182 additions and 1 deletions
|
@ -37,6 +37,8 @@ namespace Kernel {
|
|||
|
||||
class Device;
|
||||
|
||||
extern WorkQueue* g_io_work;
|
||||
|
||||
class AsyncDeviceRequest : public RefCounted<AsyncDeviceRequest> {
|
||||
AK_MAKE_NONCOPYABLE(AsyncDeviceRequest);
|
||||
AK_MAKE_NONMOVABLE(AsyncDeviceRequest);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue