Это может не касаться вас, но я подумал, что было бы полезно поднять его. Я сам использовал QtSingleApplication
и испытал некоторое нечетное поведение несколько дней назад. QtSingleApplication
, похоже, не работает при любых обстоятельствах. Я сделал это expierence в окнах, но в зависимости от того, что это ошибка конкретного окна или предназначена по дизайну QtSingleApplication
, она также может применяться к Linux.
В зависимости от способа запуска приложения возможны несколько экземпляров. Я сделал этот опыт, когда сделал тестовый диск моего приложения, используя мой установщик. Установщик автоматически запускает приложение после завершения. Когда я начал свое приложение, используя ссылку на рабочем столе, у меня было два экземпляра. Таким образом, функциональность QtSingleApplication
, по-видимому, зависит от способа запуска (и с какого пользователя?) Приложения. Документация неясно об этом. Но я думаю, что обычно можно ожидать, что это будет работать при любых обстоятельствах, если не указано иное.
Итак, если вам не нужны дополнительные функциональные возможности, добавленные QtSingleApplication
, QSystemSemaphore
или QSharedMemory
, кажется, лучший способ пойти.
Вы действительно должны принимать ответы на свои вопросы, если только вы не хотите, чтобы люди больше отвечали. – ereOn