di zello » 05/12/07 12:47
In win32 di solito si crea un named mutex, se esiste già si esce. Probabilmente il concetto rimane valido, ma java per quanto ne so io non ha molte possibilità di fare inter process communication. Di fatto ti rimangono i files (un processo apre un file marcato deleteOnExit, se lo trova già esistente c'è un altro processo in esecuzione), i sockets (si apre un ServerSocket su una porta ad hoc bindata su 127.0.0.1 [o anche sull'interfaccia esterna, così riesci anche ad avere una sola istanza per rete, però ti esponi]; se il socket è già aperto, il programma è in esecuzione [semmai verifica con uno scambio di messaggi che sia proprio il tuo programma, e non un altro, dietro la porta]) o le pipes (che dovrebbero funzionare anche interprocess, o così è riportato, ma non è assolutamente garantito, e quindi potresti avere qualche sorpresina a runtime).
Il faut être toujours ivre. Tout est là : c'est l'unique question. Pour ne pas sentir l'horrible fardeau du Temps qui brise vos épaules et vous penche vers la terre,il faut vous enivrer sans trêve...