負荷テストに使える、メモリを意図的に消費させるスクリプト
わざとメモリ残量がない状態にしたい場合、意外に難しいのです。
4GBメモリのパソコンならまだしも、8GBや16GBを使い切るのはなかなか苦労します。
指定したメモリ量を無駄に消費するスクリプトを公開されている方がいましたので紹介します。
'参照カウンタを使用して循環参照させる
Dim i
'5000:空きメモリが50MB減る
'10000:空きメモリが100MB減る
'20000:空きメモリが200MB減る
For i = 1 To 5000
Call k
Next
MsgBox "終了しました。このメッセージボックスを閉じるとメモリは開放されます。"
Sub k()
Dim x
Set x = CreateObject("Scripting.Dictionary")
Dim y
Set y = CreateObject("Scripting.Dictionary")
Call x.Add("a", y)
Call y.Add("b", x)
' Call x.RemoveAll()
' Call y.RemoveAll()
End Sub
すみません。そのまま転載です。
ループ回数を調整することでメモリ消費量を変えることができます。
ダイアログを閉じればすぐに解放されるので安心です。
メモリ残量って0になってもOSは意外にも普通に動きますね。関心です。
でも、フリーズするかもしれませんので、ご注意ください。
== ランキングに参加しています。ぜひクリックお願いします ==
[Java] ファイルを読んでバイト配列に入れる [C#] マウスカーソルを変更する
メモリ残量が0になってもHDDの残りの容量がある限りswapがあるから大丈夫
そうですね。
なので、メモリがなくなって壊れるテストというのは実際のところ難しいです。
パフォーマンステストとしては意味がありますが。