Unique instance de programme Java sans socket

Soyez le premier à donner votre avis sur cette source.

Snippet vu 16 365 fois - Téléchargée 8 fois

Contenu du snippet

package perso.device.system;
//Import needed packages
import java.io.File;
import java.io.IOException;
import java.security.AccessController;
import sun.security.action.GetPropertyAction;
/**
 * <p>Title : UtilitiesSystem</p>
 * <p>Description : Class device for System</p>
 * <p>Copyright : Copyright (c) 2007</p>
 * <p>Society : Perso</p>
 * @author Indiana_jules
 * @version 1.0
 */
public class UtilitiesSystem {
    /**Method detecting if an instance of a program is running
     * @param name Program's name
     * @return Return the state
     * @throws IOException Input/Output error
     */
    public static synchronized Boolean isSingletonProgram(String name) throws IOException {
        Boolean statut = true;
        GetPropertyAction a = new GetPropertyAction("java.io.tmpdir");
        String tmpdir = ((String) AccessController.doPrivileged(a));
        
        File temporaryFile = new File(tmpdir + "/" + name +".tmp");
        statut = !temporaryFile.exists();
        
        if(statut){
            temporaryFile.createNewFile();
            temporaryFile.deleteOnExit();
        }
        
        return statut;
    }
}


Compatibilité : Java

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.