{"id":993,"date":"2018-09-17T19:06:49","date_gmt":"2018-09-17T10:06:49","guid":{"rendered":"https:\/\/chat-messenger.com\/?p=993"},"modified":"2019-06-30T18:44:15","modified_gmt":"2019-06-30T09:44:15","slug":"tong-thoi-gian-chay-bo-nho-mien-phi","status":"publish","type":"post","link":"https:\/\/chat-messenger.com\/vi\/blog\/java\/runtime-totalmemory-freememory","title":{"rendered":"L\u1ea5y m\u1ee9c s\u1eed d\u1ee5ng b\u1ed9 nh\u1edb Java"},"content":{"rendered":"<h2 class=\"common_title\"><a name=\"0\">Java <strong>k\u00fd \u1ee9c<\/strong>Thu th\u1eadp d\u1eef li\u1ec7u s\u1eed d\u1ee5ng <strong>Runtime.getRuntime().totalMemory, freeMemory<\/strong><\/a><\/h2>\n<p>\n<strong>Java <\/strong> H\u00e0m n\u00e0y tr\u1ea3 v\u1ec1 th\u00f4ng tin v\u1ec1 b\u1ed9 nh\u1edb c\u1ee7a m\u00e1y \u1ea3o, bao g\u1ed3m &quot;T\u1ed5ng dung l\u01b0\u1ee3ng&quot;, &quot;\u0110\u00e3 s\u1eed d\u1ee5ng&quot; v\u00e0 &quot;Dung l\u01b0\u1ee3ng t\u1ed1i \u0111a kh\u1ea3 d\u1ee5ng&quot;.<br \/>\nPh\u1ea7n gi\u1ea3i th\u00edch cho t\u1eebng m\u1ee5c nh\u01b0 sau:\n<\/p>\n<ul>\n<li><strong>t\u1ed5ng c\u1ed9ng<\/strong>\u30fb\u30fb\u30fb<strong>Runtime.getRuntime().totalMemory()<\/strong>\u0110\u00e2y l\u00e0 dung l\u01b0\u1ee3ng b\u1ed9 nh\u1edb \u0111\u01b0\u1ee3c c\u1ea5p ph\u00e1t cho M\u00e1y \u1ea3o Java.<\/li>\n<li><strong>L\u01b0\u1ee3ng s\u1eed d\u1ee5ng<\/strong>\u30fb\u30fb\u30fb<strong>Runtime.getRuntime().totalMemory()<\/strong>\u3000-\u3000<strong>Runtime.getRuntime().freeMemory()<\/strong>N\u00f3 \u0111\u00e3 tr\u1edf th\u00e0nh,<br \/>\n\u0110\u00e2y l\u00e0 m\u1ee9c s\u1eed d\u1ee5ng b\u1ed9 nh\u1edb c\u1ee7a c\u00e1c \u0111\u1ed1i t\u01b0\u1ee3ng hi\u1ec7n \u0111ang \u0111\u01b0\u1ee3c c\u1ea5p ph\u00e1t trong b\u1ed9 nh\u1edb.<\/li>\n<li><strong>kh\u1ea3 d\u1ee5ng t\u1ed1i \u0111a<\/strong>\u30fb\u30fb\u30fb<strong>Runtime.getRuntime().maxMemory()<\/strong>\u0110\u00e2y l\u00e0 dung l\u01b0\u1ee3ng b\u1ed9 nh\u1edb t\u1ed1i \u0111a m\u00e0 M\u00e1y \u1ea3o Java s\u1ebd c\u1ed1 g\u1eafng s\u1eed d\u1ee5ng.<br \/>\nN\u1ebfu m\u1ee9c s\u1eed d\u1ee5ng b\u1ed9 nh\u1edb g\u1ea7n \u0111\u1ea1t \u0111\u1ebfn gi\u1edbi h\u1ea1n v\u00e0 qu\u00e1 tr\u00ecnh thu gom r\u00e1c kh\u00f4ng th\u1ec3 gi\u1ea3i ph\u00f3ng b\u1ed9 nh\u1edb, M\u00e1y \u1ea3o Java s\u1ebd m\u1edf r\u1ed9ng \u0111\u1ebfn dung l\u01b0\u1ee3ng &quot;t\u1ed1i \u0111a c\u00f3 s\u1eb5n&quot;.<\/li>\n<\/ul>\n<h2 class=\"common_title\"><a name=\"1\">Ch\u01b0\u01a1ng tr\u00ecnh m\u1eabu<\/a><\/h2>\n<pre class=\"sample_src\">\/**\r\n * Java \u4eee\u60f3\u30de\u30b7\u30f3\u306e\u30e1\u30e2\u30ea\u7dcf\u5bb9\u91cf\u3001\u4f7f\u7528\u91cf\u3001\r\n * \u4f7f\u7528\u3092\u8a66\u307f\u308b\u6700\u5927\u30e1\u30e2\u30ea\u5bb9\u91cf\u306e\u60c5\u5831\u3092\u8fd4\u3057\u307e\u3059\u3002\r\n * @return Java \u4eee\u60f3\u30de\u30b7\u30f3\u306e\u30e1\u30e2\u30ea\u60c5\u5831\r\n *\/\r\npublic static String getMemoryInfo() {\r\n    DecimalFormat f1 = new DecimalFormat(\"#,###KB\");\r\n    DecimalFormat f2 = new DecimalFormat(\"##.#\");\r\n    long free = Runtime.getRuntime().freeMemory() \/ 1024;\r\n    long total = Runtime.getRuntime().totalMemory() \/ 1024;\r\n    long max = Runtime.getRuntime().maxMemory() \/ 1024;\r\n    long used = total - free;\r\n    double ratio = (used * 100 \/ (double)total);\r\n    String info = \r\n    \"Java \u30e1\u30e2\u30ea\u60c5\u5831 : \u5408\u8a08=\" + f1.format(total) + \"\u3001\" +\r\n    \"\u4f7f\u7528\u91cf=\" + f1.format(used) + \" (\" + f2.format(ratio) + \"%)\u3001\" +\r\n    \"\u4f7f\u7528\u53ef\u80fd\u6700\u5927=\"+f1.format(max);\r\n    return info;\r\n}\r\n<\/pre>\n<p><script type=\"text\/javascript\" src=\"https:\/\/chat-messenger.com\/js\/common.js?dd12sssas2223\" charset=\"UTF-8\"><\/script><br \/>\n<script type=\"text\/javascript\"> writePR(); <\/script><\/p>\n<h2 class=\"common_title\"><a name=\"2\">K\u1ebft qu\u1ea3 th\u1ef1c thi 1<\/a><\/h2>\n<p>\u25c6V\u00ed d\u1ee5<\/p>\n<pre class=\"sample_src\">public static void main(String[] args) { System.out.println(getMemoryInfo()); }\r\n<\/pre>\n<p>\u25c6K\u1ebft qu\u1ea3 \u0111\u1ea7u ra<\/p>\n<pre class=\"console\">Th\u00f4ng tin b\u1ed9 nh\u1edb Java: T\u1ed5ng c\u1ed9ng = 1.984KB, \u0110\u00e3 s\u1eed d\u1ee5ng = 458KB (23,1%), Dung l\u01b0\u1ee3ng t\u1ed1i \u0111a kh\u1ea3 d\u1ee5ng = 65.088KB\r\n<\/pre>\n<h2 class=\"common_title\"><a name=\"3\">K\u1ebft qu\u1ea3 th\u1ef1c thi 2<\/a><\/h2>\n<p>\u25c6V\u00ed d\u1ee5<br \/>\nH\u00e3y th\u1eed thay \u0111\u1ed5i k\u00edch th\u01b0\u1edbc v\u00f9ng nh\u1edb heap c\u1ee7a Java v\u00e0 ch\u1ea1y ch\u01b0\u01a1ng tr\u00ecnh.<br \/>\nK\u00edch th\u01b0\u1edbc v\u00f9ng nh\u1edb heap c\u1ee7a Java c\u00f3 th\u1ec3 \u0111\u01b0\u1ee3c ch\u1ec9 \u0111\u1ecbnh b\u1eb1ng c\u00e1ch s\u1eed d\u1ee5ng c\u00e1c t\u00f9y ch\u1ecdn l\u1ec7nh Java.<\/p>\n<div class=\"point\">\njava -Xms64m -Xmx512m Main <\/p>\n<p>-Xms k\u00edch th\u01b0\u1edbc heap ban \u0111\u1ea7u<br \/>\nCh\u1ec9 \u0111\u1ecbnh dung l\u01b0\u1ee3ng b\u1ed9 nh\u1edb \u0111\u01b0\u1ee3c c\u1ea5p ph\u00e1t ban \u0111\u1ea7u cho M\u00e1y \u1ea3o Java. Gi\u00e1 tr\u1ecb m\u1eb7c \u0111\u1ecbnh l\u00e0 2MB.<br \/>\n-Xmx K\u00edch th\u01b0\u1edbc heap t\u1ed1i \u0111a<br \/>\nCh\u1ec9 \u0111\u1ecbnh dung l\u01b0\u1ee3ng b\u1ed9 nh\u1edb t\u1ed1i \u0111a \u0111\u01b0\u1ee3c c\u1ea5p ph\u00e1t cho M\u00e1y \u1ea3o Java. Gi\u00e1 tr\u1ecb m\u1eb7c \u0111\u1ecbnh l\u00e0 64MB.\n<\/div>\n\n<pre class=\"sample_src\">public static void main(String[] args) { System.out.println(getMemoryInfo()); }\r\n<\/pre>\n<p>\u25c6K\u1ebft qu\u1ea3 \u0111\u1ea7u ra<\/p>\n<pre class=\"console\">Th\u00f4ng tin b\u1ed9 nh\u1edb Java: T\u1ed5ng c\u1ed9ng = 65.088KB, \u0110\u00e3 s\u1eed d\u1ee5ng = 524KB (0,8%), Dung l\u01b0\u1ee3ng t\u1ed1i \u0111a kh\u1ea3 d\u1ee5ng = 520.256KB\r\n<\/pre>\n<p>&quot;T\u1ed5ng th\u1eddi gian ch\u1ea1y.getRuntime().totalMemory()&quot;<strong>-Xms<\/strong>Gi\u00e1 tr\u1ecb t\u1ed1i \u0111a c\u00f3 s\u1eb5n l\u00e0 Runtime.getRuntime().maxMemory().<strong>-Xmx<\/strong>Li\u00ean k\u1ebft n\u00e0y d\u1eabn \u0111\u1ebfn [trang c\u00f3 li\u00ean quan].<\/p>","protected":false},"excerpt":{"rendered":"<p>Java \u30e1\u30e2\u30ea\u30fc\u4f7f\u7528\u91cf\u3092\u53d6\u5f97 Runtime.getRuntime().totalMemory\u3001freeMe [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"swell_btn_cv_data":"","footnotes":""},"categories":[19],"tags":[],"class_list":["post-993","post","type-post","status-publish","format-standard","hentry","category-java"],"_links":{"self":[{"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/posts\/993","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/comments?post=993"}],"version-history":[{"count":9,"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/posts\/993\/revisions"}],"predecessor-version":[{"id":3636,"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/posts\/993\/revisions\/3636"}],"wp:attachment":[{"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/media?parent=993"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/categories?post=993"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/chat-messenger.com\/vi\/wp-json\/wp\/v2\/tags?post=993"}],"curies":[{"name":"trang web","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}