3 回答

TA貢獻(xiàn)2012條經(jīng)驗(yàn) 獲得超12個(gè)贊
兩點(diǎn):
如果您運(yùn)行的是32位Windows,則將無法訪問所有4GB內(nèi)存,而只能訪問2GB。
不要忘記的底層實(shí)現(xiàn)
List
是一個(gè)數(shù)組。如果您的內(nèi)存非常分散,則List
即使您總共有足夠的可用內(nèi)存,也可能沒有足夠的連續(xù)空間來分配您的。

TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超8個(gè)贊
3歲的主題,但我找到了另一個(gè)可行的解決方案。如果您確定有足夠的可用內(nèi)存,正在運(yùn)行64位操作系統(tǒng)并且仍然出現(xiàn)異常,請(qǐng)轉(zhuǎn)到Project properties
-> Build
選項(xiàng)卡,并確保將其設(shè)置x64
為Platform target
。

TA貢獻(xiàn)1840條經(jīng)驗(yàn) 獲得超5個(gè)贊
.Net4.5對(duì)對(duì)象不再有2GB的限制。將此行添加到App.config
<runtime>
<gcAllowVeryLargeObjects enabled="true" />
</runtime>
并且可以創(chuàng)建非常大的對(duì)象而不會(huì)出現(xiàn)OutOfMemoryException
請(qǐng)注意,它僅適用于x64 OS!
- 3 回答
- 0 關(guān)注
- 810 瀏覽
添加回答
舉報(bào)