Russian Qt Forum

Qt => Многопоточное программирование, процессы => Тема начата: romanick от Сентябрь 09, 2012, 15:53



Название: сигнал между процессами
Отправлено: romanick от Сентябрь 09, 2012, 15:53
Добрый день! Как можно в Qt  передать сигнал(не Qt-шный) между двумя разными процессами (два exe)? Есть мьютексы, но они работают только между потоками. QSystemSemaphore похоже не то что нужо... Данные собираюсь передавать через QSharedMemory, но как разбудить слушателя, чтобы он прошёл память?
Для WinAPI решение нашёл http://netcode.ru/cpp/?lang=&katID=8&skatID=85&artID=3194
но хочется чего-то родного Qt-шного... )

Насчёт tcp знаю, но пока ищу решение через QSharedMemory


Название: Re: сигнал между процессами
Отправлено: Igors от Сентябрь 09, 2012, 16:06
QSystemSemaphore похоже не то что нужо...
Судя по доке - то. Сам использую (OSX POSIX) sem_open (O_CREATE). sem_wait, и.т.д - вполне устраивает для синхронизации между процессами. Ограничения:

- нет таймаута
- срабатывает если получен сигнал (решается проверкой возвращенного значения)


Название: Re: сигнал между процессами
Отправлено: romanick от Сентябрь 09, 2012, 20:34
Спасибо, подразобрался с QSystemSemaphore - действительно можно присбособить и его.