2012-10-03 87 views
2

和數組是一樣的嗎? 我有一個交錯數組像下一個:Jagged Arrays可容納的最大尺寸是多少?

double numbers[][]=numbers[a][] 

其中「a」可以是任何數字。我如何才能找出鋸齒陣列的最大尺寸。

我已經讀過,它受限於內存或可用虛擬內存的數量,但是如果mi PC的RAM內存爲8 GB,我該如何計算這個值。

我的主要目標是找出我的程序使用多少內存,但我不知道如何開始發現的物理或虛擬內存量被用於

+0

我寧願使用性能計數器:http://stackoverflow.com/questions/3411805/using-performancecounter-to-track-memory-and-cpu-usage-per-process – BlackBear

回答

2

它通常是一個錯誤的問題。
當你運行32位或64位系統時,情況會有所不同。

在32位系統中,您有2GB的總限制(可用地址空間的一半),在64位下它幾乎是無限的。

主要目標是找出我的程序使用多少內存

這是不同的。您可以從GC.GetTotalMemory();

+0

你能告訴我你在哪裏根據你的答案,當你說64位是無限的 – JUAN

+0

_virtually_無限。 2G x 2G現在可能比您的硬盤大很多。 –

1

單個陣列(任何標準陣列,例如int[])的最大大小爲System.Int32.MaxValue。這意味着您的鋸齒陣列可以容納int.MaxValueint.MaxValue項目。

This link來自SO對陣列的最大尺寸有一個很好的答案。

相關問題