|
libnx v4.9.0
|
User mode synchronization primitive waiting operations. More...
#include "mutex.h"Go to the source code of this file.
Data Structures | |
| struct | WaitableNode |
| struct | Waitable |
| struct | Waiter |
| Waiter structure, representing any generic waitable synchronization object; both kernel-mode and user-mode. More... | |
Macros | |
| #define | waitMulti(idx_out, timeout, ...) |
| Helper macro for waitObjects that accepts Waiter structures as variadic arguments instead of as an array. | |
| #define | waitMultiHandle(idx_out, timeout, ...) |
| Helper macro for waitHandles that accepts handles as variadic arguments instead of as an array. | |
Typedefs | |
| typedef struct WaitableMethods | WaitableMethods |
Enumerations | |
| enum | WaiterType { WaiterType_Handle , WaiterType_HandleWithClear , WaiterType_Waitable } |
Functions | |
| static Waiter | waiterForHandle (Handle h) |
| Creates a Waiter for a kernel-mode Handle. | |
| Result | waitObjects (s32 *idx_out, const Waiter *objects, s32 num_objects, u64 timeout) |
| Waits for an arbitrary number of generic waitable synchronization objects, optionally with a timeout. | |
| Result | waitHandles (s32 *idx_out, const Handle *handles, s32 num_handles, u64 timeout) |
| Waits for an arbitrary number of kernel synchronization objects, optionally with a timeout. | |
| static Result | waitSingle (Waiter w, u64 timeout) |
| Waits on a single generic waitable synchronization object, optionally with a timeout. | |
| static Result | waitSingleHandle (Handle h, u64 timeout) |
| Waits for a single kernel synchronization object, optionally with a timeout. | |
User mode synchronization primitive waiting operations.
| #define waitMulti | ( | idx_out, | |
| timeout, | |||
| ... | |||
| ) |
Helper macro for waitObjects that accepts Waiter structures as variadic arguments instead of as an array.
| [out] | idx_out | The index of the signalled waiter. |
| [in] | timeout | Timeout (in nanoseconds). |
| #define waitMultiHandle | ( | idx_out, | |
| timeout, | |||
| ... | |||
| ) |
Helper macro for waitHandles that accepts handles as variadic arguments instead of as an array.
| [out] | idx_out | The index of the signalled handle. |
| [in] | timeout | Timeout (in nanoseconds). |
Waits for an arbitrary number of kernel synchronization objects, optionally with a timeout.
This function replaces svcWaitSynchronization.
| [out] | idx_out | Variable that will received the index of the signalled object. |
| [in] | handles | Array containing handles. |
| [in] | num_handles | Number of handles in the array. |
| [in] | timeout | Timeout (in nanoseconds). |
Waits for an arbitrary number of generic waitable synchronization objects, optionally with a timeout.
| [out] | idx_out | Variable that will received the index of the signalled object. |
| [in] | objects | Array containing Waiter structures. |
| [in] | num_objects | Number of objects in the array. |
| [in] | timeout | Timeout (in nanoseconds). |
Waits on a single generic waitable synchronization object, optionally with a timeout.
| [in] | w | Waiter structure. |
| [in] | timeout | Timeout (in nanoseconds). |