我目前正在支持一个VB6应用程序(我们正在替换该应用程序,但这是一个缓慢的过程!)在多个服务器上运行。有人能告诉我VB6进程的最大内存容量是多少吗?我们正在使用各种操作系统:
但是,由于讨论了基于.NET的应用程序,我怀疑这是否准确,但是我找不到比这更多的东西。
发布于 2017-06-27 02:55:55
很难把这些“超人与上帝搏斗”的问题看得太严肃了。在这成为一个问题之前很久,您应该从内存驻留的数据结构转移到磁盘文件或数据库无论如何。
但是,即使没有/LARGEADDRESSAWARE链接和引导到3GB模式,VB6程序也可以在32位Windows上处理相当多的数据。
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结果:
Success
Bytes(MAX_BYTES) = 255
MAX_BYTES = 1,668,284,416链接的博客文章正确地指出了.Net过程的局限性以及它们无法处理大量数据的问题。像.Net这样的脚本引擎不是为这些东西而构建的,不要低估巨大库的开销,即使是最简单的.Net程序也会拖到它的地址空间中。
https://stackoverflow.com/questions/44762556
复制相似问题