IOCTL_PSL_NOTIFY
Other versions of this page are also available for the following:
8/27/2008
This IOCTL is used by device drivers if a process is exiting, that is, its main thread terminates, while one or more other threads are running. It can also be used when secondary threads that are blocked in a system call do not exit cleanly when requested by the scheduler. This IOCTL provides a mechanism for the system call implementers to unblock threads belonging to processes that have been terminated.
Parameters
- dwIoControlCode
[in] Set to IOCTL_PSL_NOTIFY.
- lpInBuf
[in] Pointer to a DEVICE_PSL_NOTIFY structure.
- nInBufSize
[in] Set to sizeof(DEVICE_PSL_NOTIFY), the size of lpInBuf.
- lpOutBuf
[out] Reserved. Set to NULL.
- nOutBufSize
[out] Reserved. Set to zero.
- lpBytesReturned
[out] Reserved. Set to NULL.
Return Values
TRUE indicates success. FALSE indicates failure.
Remarks
Device drivers use this IOCTL to perform custom processing not handled by the XXX_Close (Device Manager) function.
If threads owned by processes that no longer exit are blocked in a call to a driver, the OS uses IOCTL_PS_NOTIFY to notify the driver to unblock those threads.
The OS invokes IOCTL_PSL_NOTIFY when all of the following conditions are true:
- The application's main thread exits.
- The application has other threads still running.
- The application has open file handles that refer to the device.
Requirements
Header | pkfuncs.h |
Windows Embedded CE | Windows CE 3.1 and later |