Lista de processos da JVM

Qual classe possui metodos para que eu possa saber quais metodos a JVM esta executando?

Quero permitir que o mesmo aplicativo não seja disparado 2 vezes.

Obrigado!

Greenler,

Eu já implementei um aplicativo singleton, mas fiz o controle dando lock num arquivo específico, e não verificando a lista de processos… não sei se isso lhe ajudaria…

Att
Maicon

O que faço é disparar um processo em uma porta e ai quando abro a aplicação verifico se essa porta esta sendo executada já se nao estiver faço uma conexao nela caso contrário a aplicação esta ativa e ai exibo um erro.

//Classe que executo o sistema a Main.

	try {
			Socket socketClient = new Socket (InetAddress.getByName("localhost"),3321);
			
			JOptionPane.showMessageDialog(null,"Já existe uma instancia da aplicação ativa.",Idioma.getPropriedade("mensagem.atencao"), JOptionPane.WARNING_MESSAGE);
			
			System.exit(-1); 			
			
	} catch (Exception e) {
		
	try {
		Thread t = new Thread(new AppExecucao());
		t.setPriority(Thread.MIN_PRIORITY);
		t.start();
			 
	        } catch (java.net.UnknownHostException ex) {
	            ex.printStackTrace();
	        }

}

//Classe de verificação da porta.
public class AppExecucao implements Runnable {

public void run() {
	ServerSocket server;
	while(true){
		try {				
			server = new ServerSocket(3321);
			Socket ss = server.accept();				
		} catch (IOException e2) {	
			
		}
	}
}

}