我正在使用QtConcurrent/QThreadPool,它正在创建堆栈大小在MacOSX10.8(512‘m)上太小,但在CentOS 5.9 (10 Mac )上很好的线程。我希望有一个解决办法,可以为新线程的堆栈大小设置一些进程范围的默认设置。我只关心类似POSIX的系统(Mac和Linux),暂时不关心Windows。我的问题是,在运行程序之前,如何从程序内部或通过环境变量或其他方法为新的线程设置默认堆栈<
关于Linux上进程的堆栈大小,我有一个问题。此堆栈大小是否在链接时确定并在ELF文件中编码?我写了一个程序来打印它的堆栈大小如果我直接从shell运行这个程序,它的值大约是10 of。但是,当我从属于多线程程序的线程中exec它时,它的值大约为2MB。
因此,我想知道哪些因素影响来自某些父进程的fork and exec-ed进程的堆栈大小。在子进程fork