gpt4 book ai didi

c# - 为什么 16 字节是 C# 中 struct 的推荐大小?

转载 作者:IT王子 更新时间:2023-10-29 04:06:16 26 4
gpt4 key购买 nike

我读了 Cwalina 书(关于 .NET 应用程序开发和设计的建议)。

他说一个设计良好的结构必须小于 16 个字节(出于性能目的)。

为什么会这样?

而且(更重要的是)如果我在 Core i7 上运行我的 .NET 3.5(即将成为 .NET 4.0)64 位应用程序,我能否以相同的效率拥有更大的结构?在 Windows 7 x64 下(此限制是否基于 CPU/操作系统)?

再次强调 - 我需要尽可能高效的结构。我试着一直把它放在堆栈上。该应用程序是高度多线程的,以亚毫秒的间隔运行,结构的当前大小为 64 字节。

最佳答案

您错误地引用了这本书(至少是第 2 版)。 Jeffrey Richter 指出值类型可以超过 16 个字节,如果:

You don't intend to pass them to other methods or copy them to and from a collection class.

另外 Eric Gunnerson 添加(关于 16 字节限制)

Use this guideline as a trigger to do more investigation.

结构“必须小于 16 个字节”的说法根本不正确。这完全取决于使用情况。

如果您正在创建结构并使用它并且担心性能,那么请使用分析器比较结构与类,看看哪个最适合您。

关于c# - 为什么 16 字节是 C# 中 struct 的推荐大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2407691/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com