⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 java程序实现监视-java程序内存使用情况.txt

📁 JAVA程序实现监视-JAVA程序内存使用情况
💻 TXT
字号:
package myprojects.jmemorydemo; 

import Javax.Swing.UIManager; 
import java.awt.*; 


public class JMemoryDemo { 
private boolean packFrame = false; 


public JMemoryDemo() { 
MainFrame frame = new MainFrame(); 

if (packFrame) { 
frame.pack(); 
} 
else { 
frame.validate(); 
} 

Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize(); 
Dimension frameSize = frame.getSize(); 
if (frameSize.height > screenSize.height) { 
frameSize.height = screenSize.height; 
} 
if (frameSize.width > screenSize.width) { 
frameSize.width = screenSize.width; 
} 
frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) 
/ 2); 
frame.setVisible(true); 
} 

public static void main(String[] args) 
{ 
new JMemoryDemo(); 
} 
} 

=================================================== 
package myprojects.jmemorydemo; 
import javax.swing.*; 



public class ProgressThread extends Thread { 
JProgressBar PBar; 
JLabel label; 

public ProgressThread(JProgressBar pbar,JLabel label) { 
this.pbar=pbar; 
this.label=label; 
} 
public void run() { 


int min=0; 
int max=100; 
int free=0; 
int totle=0; 
int status=0; 

pbar.setMinimum(min); 
pbar.setMaximum(max); 
pbar.setValue(status); 
while(true){ 
try{ 
totle=(int)(Runtime.getRuntime().totalMemory()/1024); 
free=(int)(Runtime.getRuntime().freeMemory()/1024); 
}catch(Exception e){ 
e.printStackTrace(); 
} 
label.setText("Free Memory :"+(int)(Runtime.getRuntime().freeMemory()/1024)+"K"+" Totle Memory Allo 
cated :" 
+(int)(Runtime.getRuntime().totalMemory()/1024)+"K"); 
status=(int)(free*100/totle); 
pbar.setValue(status); 
pbar.setString("Free Momery "+ status+"%"); 
try{ 
this.sleep(1000); 
}catch(InterruptedException err){} 
} 

} 

} 

=============================================== 
package myprojects.jmemorydemo; 


import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 



public class MainFrame extends JFrame { 
private JPanel contentPane; 
private BorderLayout borderLayout1 = new BorderLayout(); 
private JProgressBar jProgressBar1 = new JProgressBar(); 
private JLabel jLabel1 = new JLabel(); 
private JLabel jLabel2 = new JLabel(); 


public MainFrame() { 
enableEvents(AWTEvent.WINDOW_EVENT_MASK); 
try { 
jbInit(); 
} 
catch(Exception e) { 
e.printStackTrace(); 
} 
} 

private void jbInit() throws Exception { 
(MainFrame.class.getResource("[Your Icon]"))); 
contentPane = (JPanel) this.getContentPane(); 
contentPane.setLayout(borderLayout1); 
this.setSize(new Dimension(304, 215)); 
this.setTitle("JMemoryDemo"); 
jLabel1.setFont(new java.awt.Font("Dialog", 0, 14)); 
jLabel1.setHorizontalAlignment(SwingConstants.CENTER); 
jLabel1.setText("Memory Monitor"); 
jProgressBar1.setOrientation(JProgressBar.VERTICAL); 
jProgressBar1.setFont(new java.awt.Font("Dialog", 0, 14)); 
jProgressBar1.setToolTipText(""); 
jProgressBar1.setStringPainted(true); 
jLabel2.setFont(new java.awt.Font("Dialog", 0, 14)); 
jLabel2.setText(""); 
contentPane.add(jProgressBar1, BorderLayout.CENTER); 
contentPane.add(jLabel1, BorderLayout.NORTH); 
contentPane.add(jLabel2, BorderLayout.SOUTH); 

ProgressThread pThread = new ProgressThread(this.jProgressBar1,this.jLabel2); 
pThread.start(); 
} 

protected void processWindowEvent(WindowEvent e) { 
super.processWindowEvent(e); 
if (e.getID() == WindowEvent.WINDOW_CLOSING) { 
System.exit(0); 
} 
} 
} 
====================================================================== 
提示如下: 
====================================================================== 
问题的关键: 
totle=(int)(Runtime.getRuntime().totalMemory()/1024); 
free=(int)(Runtime.getRuntime().freeMemory()/1024); 
=================================================== 
有什么问题,可以发Email:dw5189@163.com 
========================================

提供最新版的JCreator PRO build 3.00.094 

http://www.jcreator.com/download.htm 

Username: P145460-Brian Luke 

Key: 00HE3T-MX6F41-7E9CFN-68745A-RD1PAJ-0GKKPP-YYJVDR-CXJXHG-6GFXX8 
========================================

提供JCreator PRO build 2.50序列号: 

注册码: 
etalking 
niit 
P-etalking niit 
36336-27630-63362-56226-23628

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -