首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >VB6内存限制

VB6内存限制
EN

Stack Overflow用户
提问于 2017-06-26 14:55:10
回答 1查看 1.3K关注 0票数 2

我目前正在支持一个VB6应用程序(我们正在替换该应用程序,但这是一个缓慢的过程!)在多个服务器上运行。有人能告诉我VB6进程的最大内存容量是多少吗?我们正在使用各种操作系统:

  • Windows 2003 32位
  • Windows 2008 64位
  • Windows 2008 R2 64位

我试过使用这样的资源:https://blogs.msdn.microsoft.com/tom/2008/04/10/chat-question-memory-limits-for-32-bit-and-64-bit-processes/

但是,由于讨论了基于.NET的应用程序,我怀疑这是否准确,但是我找不到比这更多的东西。

EN

回答 1

Stack Overflow用户

发布于 2017-06-27 02:55:55

很难把这些“超人与上帝搏斗”的问题看得太严肃了。在这成为一个问题之前很久,您应该从内存驻留的数据结构转移到磁盘文件或数据库无论如何。

但是,即使没有/LARGEADDRESSAWARE链接和引导到3GB模式,VB6程序也可以在32位Windows上处理相当多的数据。

代码语言:javascript
复制
Option Explicit

Private Sub Main()
    Const MAX_BYTES As Long = &H63700000
    Dim Bytes() As Byte

    ReDim Bytes(MAX_BYTES)
    Bytes(MAX_BYTES) = 255
    MsgBox "Success" & vbNewLine & vbNewLine _
         & "Bytes(MAX_BYTES) = " & CStr(Bytes(MAX_BYTES)) & vbNewLine & vbNewLine _
         & "MAX_BYTES = " & Format$(MAX_BYTES, "#,##0")
End Sub

结果:

代码语言:javascript
复制
Success

Bytes(MAX_BYTES) = 255

MAX_BYTES = 1,668,284,416

链接的博客文章正确地指出了.Net过程的局限性以及它们无法处理大量数据的问题。像.Net这样的脚本引擎不是为这些东西而构建的,不要低估巨大库的开销,即使是最简单的.Net程序也会拖到它的地址空间中。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44762556

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档