c/c++语言开发共享某个程序的堆栈内存有多大,是否有可以设置它的编译器标志?

正如标题所述:关于堆栈的大小是否有任何一般的“经验法则”。 我猜测大小会有所不同,具体取决于操作系统,体系结构,缓存大小,可用RAM数量等。

但是一般可以说什么,或者有没有办法找出,有多少堆栈, 这个程序是允许使用的? 作为一个额外的问题是有任何方式(使用编译器标志等(在这里主要考虑C / C ++,但也更通用))堆栈的大小可以由用户设置为固定大小?

顺便说一句,我严格要求出于好奇,我没有堆栈溢出。 ?

    是的,你可以设置堆栈大小,它通常是一个链接器标志,它取决于你的工具链(通常这是由编译器的名称引用)。

    您还可以在StackOverflow上找到几个现有问题。

    在Windows中,无论操作系统如何,线程的默认堆栈大小都是一百万字节。

    在托管代码(C#,VB等)中,您可以使用此ctor强制新线程具有不同的堆栈大小:

    要更改Windows程序的默认线程的堆栈大小,无论是否管理,您都可以使用editbin实用程序:

    需要了解更多c/c++开发分享某个程序的堆栈内存有多大,是否有可以设置它的编译器标志?,也可以关注C/ C++技术分享栏目—计算机技术网(www.ctvol.com)!

      以上就是c/c++开发分享某个程序的堆栈内存有多大,是否有可以设置它的编译器标志?相关内容,想了解更多C/C++开发(异常处理)及C/C++游戏开发关注计算机技术网(www.ctvol.com)!)。

      本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。

      ctvol管理联系方式QQ:251552304

      本文章地址:https://www.ctvol.com/c-cdevelopment/979291.html

      (0)
      上一篇 2021年12月12日
      下一篇 2021年12月12日

      精彩推荐