我想直接通過Matlab命令增加Java堆大小,因爲我需要根據環境進行動態控制。 我知道線程How do I increase the heap space for the Java VM in MATLAB 6.0 (R12) and later versions他們說要使用java.opts
文件,但我想直接使用Matlab提示進行操作。 有很多線程只是通過Matlab GUI或文件來改變參數,比如Matlab的博文Controlling the Java Heap Size。如何直接在Matlab中增加Java堆大小?
我感興趣的動態增加這些參數
heapSizeMemoryDefault = 521142272; % 512 MB
assert(java.lang.Runtime.getRuntime.maxMemory > heapSizeMemoryDefault*2, 'Java heap size too small');
runTimeMemoryDefault = 90116624; % about 890 MB
assert(java.lang.Runtime.getRuntime.freeMemory > 90116624*2, 'Java free memory size too small');
你怎麼能直接在Matlab 2016a增加Java堆大小?
太棒了!缺省運行時可用內存的名稱是什麼?它的大小應該是默認情況下的兩倍。 –
空閒內存不是您可以使用設置控制的東西。您控制最大堆大小。當您在運行時創建Java對象時,它們將放置在堆上,從而增加使用的內存量,並減少剩餘的可用內存量。基本上,空閒內存是最大堆大小和所有java對象消耗的內存之間的差異。 –
優秀的解釋!謝謝你的澄清!我接受你的回答,因爲它徹底回答了問題。 –