मैं यह गणना करने की कोशिश कर रहा हूं कि मेरे जावा प्रोग्राम में कितनी मेमोरी उपलब्ध है।जावा में उपलब्ध स्मृति की गणना करने का सबसे अच्छा तरीका क्या है?
long getAvailableMemory() {
Runtime runtime = Runtime.getRuntime();
long totalMemory = runtime.totalMemory();
long freeMemory = runtime.freeMemory();
long maxMemory = runtime.maxMemory();
long usedMemory = totalMemory - freeMemory;
long availableMemory = maxMemory - usedMemory;
return availableMemory;
}
यह सही है: मैं इस वर्तमान कार्यान्वयन है? क्या इस जानकारी की गणना करने का कोई आसान/अधिक सटीक तरीका है?
long getAvailableMemory() {
long totalVmHeap = Runtime.getRuntime().totalMemory();
long freeVmHeap = Runtime.getRuntime().freeMemory();
long usedVmHeap = totalVmHeap - freeVmHeap;
long maxVmHeap = Runtime.getRuntime().maxMemory();
long availableVmHeap = maxVmHeap - usedVmHeap + freeVmHeap;
return availableVmHeap;
}
वैसे भी, क्या सही तरीके से इस जानकारी पर कदम उठाएं: किसी और कोड को देखने के बाद, मैं कुछ इस तरह जो थोड़ा अलग है देखा था?
आपका समाधान मुझे सही दिखता है। – Adrian
मैंने सोचा कि वे वही थे लेकिन अब मैं देखता हूं कि दूसरा वाला आपको केवल (अधिकतम - कुल) देता है। – trutheality
मुझे लगता है कि आपको अपने प्रश्न का उत्तर एक उत्तर के रूप में रखना चाहिए, ताकि यह एक उत्तर प्रश्न के रूप में दायर किया जा सके। [क्या मुझे अपने प्रश्नों का उत्तर देना चाहिए] (http://meta.stackexchange.com/questions/12513/should-i-not-answer-my-own-questions) – Jarekczek