C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


(過去ログ 159 を表示中)
■92475 / )  Re[3]: 配列のメモリ管理に関して
□投稿者/ パパラッチ (2回)-(2019/09/29(Sun) 21:38:25)
ありがとうございます。

物理メモリを超えたサイズの配列を作成できるのは
ページファイルを使っているためなのですね。


https://pc-kaizen.com/win10-virtual-memory

自動的に管理する、にチェックが入っているため、
SSDのサイズなどから自動で計算された上限値が用いられているのでしょうか?
(これはどのようにして決まるか分かりますか?)


そしてそれはタスクマネージャー・パフォーマンスモニタ上では
コミットサイズとして表示されていることも分かりました。






> Marshal クラスの AllocHGlobal / AllocCoTaskMem メソッドはヒープを確保するので、
>  Dim bbb(500, 1000, 1000) As Single
> の代わりに
> ptrBBB = Marshal.AllocCoTaskMem(501 * 1001 * 1001 * Marshal.SizeOf(Of Single)())
> で確保することはできるかも知れません。

ジャグ配列の代わりに
Marshal クラスを使うメリットは何でしょうか?
1次元配列になっているので高速処理できるということですか?

返信 編集キー/


管理者用

- Child Tree -