Changes

Jump to navigation Jump to search
394 bytes added ,  05:00, 8 November 2018
Line 646: Line 646:  
</div>
 
</div>
   −
Works with num_handles <= 0x40, error on num_handles == 0.
+
Works with num_handles <= 0x40.
 +
 
 +
When zero handles are passed, this will wait forever until either timeout or cancellation occurs.
    
Does not accept 0xFFFF8001 or 0xFFFF8000 as handles.
 
Does not accept 0xFFFF8001 or 0xFFFF8000 as handles.
Line 653: Line 655:     
'''Port:''' signals when there is an incoming connection waiting to be [[#svcAcceptSession|accepted]].
 
'''Port:''' signals when there is an incoming connection waiting to be [[#svcAcceptSession|accepted]].
 +
 +
'''Process:''' signals when the process undergoes a state change (retrievable via [[#svcGetProcessInfo]]).
 +
 +
'''ReadableEvent:''' signals when the event has been signaled via svcSignalEvent.
    
'''Session (server-side):''' signals when there is an incoming message waiting to be [[#svcReplyAndReceive|received]] or the pipe is closed.
 
'''Session (server-side):''' signals when there is an incoming message waiting to be [[#svcReplyAndReceive|received]] or the pipe is closed.
Line 658: Line 664:  
=== Result codes ===
 
=== Result codes ===
   −
'''0x0:''' Success. One of the objects was signalled before the timeout expired. Handle index is updated to indicate which object signalled.
+
'''0x0:''' Success. One of the objects was signaled before the timeout expired, or one of the objects is a Session with a closed remote. Handle index is updated to indicate which object signaled.
    
'''0x7601:''' Thread termination requested. Handle index is not updated.
 
'''0x7601:''' Thread termination requested. Handle index is not updated.
Line 664: Line 670:  
'''0xe401:''' Invalid handle. Returned when one of the handles passed is invalid. Handle index is not updated.
 
'''0xe401:''' Invalid handle. Returned when one of the handles passed is invalid. Handle index is not updated.
   −
'''0xea01:''' Timeout. Returned when no objects have been signalled within the timeout. Handle index is not updated.
+
'''0xe601:''' Invalid address. Returned when the handles pointer is not a readable address. Handle index is not updated.
 +
 
 +
'''0xea01:''' Timeout. Returned when no objects have been signaled within the timeout. Handle index is not updated.
    
'''0xec01:''' Interrupted. Returned when another thread uses [[#svcCancelSynchronization]] to cancel this thread. Handle index is not updated.
 
'''0xec01:''' Interrupted. Returned when another thread uses [[#svcCancelSynchronization]] to cancel this thread. Handle index is not updated.
   −
'''0xf601:''' Session closed. Returned when one of the handles represents a session that has been closed. Handle index is updated.
+
'''0xee01:''' Too many handles. Returned when the number of handles passed is > 0x40.
    
== svcCancelSynchronization ==
 
== svcCancelSynchronization ==

Navigation menu