Share via


IOCTL_PSL_NOTIFY (Windows Embedded CE 6.0)

1/5/2010

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.
  • 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

See Also

Reference

Other OAL IOCTLs
DEVICE_PSL_NOTIFY

Other Resources

XXX_Close (Device Manager)
XXX_IOControl (Device Manager)