什么情况会导致栈内存溢出?
(1)栈帧过多导致栈内存溢出。比如方法的递归调用,没有设置一个正确的结束条件,不断调用自己,每次调用都会分配一个栈帧,导致栈内存溢出。
(2)栈帧过大导致内存溢出。
-Xss size 给栈内存分配大小
下面是各系统默认分配栈内存大小:
Linux 1024kb
macOS 1024kb
Oracle Solaris/x64 1024kb
Windows 根据Windows的虚拟内存来定
什么情况会导致栈内存溢出?
(1)栈帧过多导致栈内存溢出。比如方法的递归调用,没有设置一个正确的结束条件,不断调用自己,每次调用都会分配一个栈帧,导致栈内存溢出。
(2)栈帧过大导致内存溢出。
-Xss size 给栈内存分配大小
下面是各系统默认分配栈内存大小:
Linux 1024kb
macOS 1024kb
Oracle Solaris/x64 1024kb
Windows 根据Windows的虚拟内存来定