Questo potrebbe non interessarti, ma ho pensato che sarebbe stato utile portarlo su. Sto usando lo stesso QtSingleApplication
e ho sperimentato qualche strano comportamento qualche giorno fa. QtSingleApplication
non sembra funzionare in tutte le circostanze. Ho fatto questa esperienza in Windows, ma a seconda che si tratti di un bug specifico per Windows o inteso dal design di QtSingleApplication
, potrebbe essere applicato anche a Linux.
A seconda del modo in cui si avvia l'applicazione, sono possibili più istanze. Ho fatto questa esperienza quando ho fatto un test della mia applicazione usando il mio programma di installazione. Il programma di installazione avvia automaticamente l'applicazione al termine. Quando ho quindi avviato la mia applicazione utilizzando il collegamento desktop, ho avuto due istanze in esecuzione. Quindi la funzionalità di QtSingleApplication
sembra dipendere dal modo in cui viene avviata l'applicazione (e da quale utente?). La documentazione non è chiara su questo. Ma penso che di solito ci si aspetterebbe che funzioni in tutte le circostanze, se non diversamente specificato.
Quindi, se non è necessaria la funzionalità aggiuntiva aggiunta da QtSingleApplication
, QSystemSemaphore
o QSharedMemory
sembra essere il modo migliore per andare.
fonte
2010-11-03 16:48:00
Dovresti davvero accettare le risposte alle tue domande a meno che tu non voglia che le persone rispondano più. – ereOn