MOS Source Code
Loading...
Searching...
No Matches
wait.hpp File Reference
+ Include dependency graph for wait.hpp:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  waitable_list_entry_t
 The entry in the waiters list of a process, or a thread. More...
 
struct  waitlist_t
 

Macros

#define waitlist_wake_one(list)
 
#define waitlist_wake_all(list)
 

Functions

void waitlist_init (waitlist_t *list)
 
__nodiscard bool waitlist_append (waitlist_t *list)
 
size_t waitlist_wake (waitlist_t *list, size_t max_wakeups)
 
void waitlist_close (waitlist_t *list)
 
void waitlist_remove_me (waitlist_t *waitlist)
 

Macro Definition Documentation

◆ waitlist_wake_one

#define waitlist_wake_one ( list)
Value:
waitlist_wake(list, 1)
size_t waitlist_wake(waitlist_t *list, size_t max_wakeups)
Definition wait.cpp:37

Definition at line 33 of file wait.hpp.

◆ waitlist_wake_all

#define waitlist_wake_all ( list)
Value:
waitlist_wake(list, SIZE_MAX)

Definition at line 34 of file wait.hpp.

Referenced by ipc_server_accept(), ipc_server_close(), and ipc_server_create().

Function Documentation

◆ waitlist_init()

◆ waitlist_append()

__nodiscard bool waitlist_append ( waitlist_t * list)

Definition at line 21 of file wait.cpp.

Referenced by ipc_connect_to_server(), ipc_server_accept(), and reschedule_for_waitlist().

+ Here is the call graph for this function:

◆ waitlist_wake()

size_t waitlist_wake ( waitlist_t * list,
size_t max_wakeups )

Definition at line 37 of file wait.cpp.

Referenced by futex_wake(), ipc_connect_to_server(), pipe_close_one_end(), pipe_read(), pipe_write(), process_exit(), Console::putc(), and thread_exit_locked().

+ Here is the call graph for this function:

◆ waitlist_close()

void waitlist_close ( waitlist_t * list)

Definition at line 68 of file wait.cpp.

Referenced by ipc_server_close(), ipc_server_create(), and thread_exit_locked().

◆ waitlist_remove_me()

void waitlist_remove_me ( waitlist_t * waitlist)

Definition at line 78 of file wait.cpp.

Referenced by ipc_server_accept(), and process_wait_for_pid().