GetCurrentThreadStackLimits function (processthreadsapi.h)

Retrieves the boundaries of the stack that was allocated by the system for the current thread.


void GetCurrentThreadStackLimits(
  [out] PULONG_PTR LowLimit,
  [out] PULONG_PTR HighLimit


[out] LowLimit

A pointer variable that receives the lower boundary of the current thread stack.

[out] HighLimit

A pointer variable that receives the upper boundary of the current thread stack.

Return value



It is possible for user-mode code to execute in stack memory that is outside the region allocated by the system when the thread was created. Callers can use the GetCurrentThreadStackLimits function to verify that the current stack pointer is within the returned limits.

To compile an application that uses this function, set _WIN32_WINNT >= 0x0602. For more information, see Using the Windows Headers.


Requirement Value
Minimum supported client Windows 8 [desktop apps | UWP apps]
Minimum supported server Windows Server 2012 [desktop apps | UWP apps]
Target Platform Windows
Header processthreadsapi.h
Library Kernel32.lib
DLL Kernel32.dll

See also

Thread Stack Size