![]() |
|
Модераторы: feodorv, GremlinProg, xvr, Fixin |
![]()
|
|
| lv151 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: 1 Всего: 2 |
Посоветуйте самый надёжный способ межпроцессного взаимодействия.
|
|||
|
||||
| feodorv |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 2214 Регистрация: 30.7.2011 Репутация: 9 Всего: 45 |
Гм. Несколько вопросов)))
-------------------- Напильник, велосипед, грабли и костыли - основные инструменты программиста... |
|||
|
||||
| baldina |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 3433 Регистрация: 5.12.2007 Где: Москва Репутация: нет Всего: 101 |
конкретизирую: - каков уровень взаимодействия, т.е. требуется просто канал для обмена, либо реализация протокола? - взаимодействие локальное или возможно удаленное? - подразумевается просто обмен потоком данных, либо интероперабельность? |
|||
|
||||
| lv151 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: 1 Всего: 2 |
Посылка текстовых сообщений из одного процесса в другой.
1 клиент и 1 сервер. Локальное. |
|||
|
||||
| vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: нет Всего: 0 |
может это сгодится.
Присоединённый файл ( Кол-во скачиваний: 9 )
____________________________________.cpp 47,21 Kb |
|||
|
||||
| vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: нет Всего: 0 |
передача данных по анонимному каналу
Это сообщение отредактировал(а) vol4ek - 19.11.2011, 00:41 |
|||
|
||||
| volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 13 Всего: 85 |
Они все надежны. Ядро работает надежно. Правильный вопрос наверное должет звучать так: Cамый удобный способ, для
ответ: SendMessage (hwd, WM_COPYDATA, ...); Хотя есть и еще куча других способов. Это сообщение отредактировал(а) volatile - 19.11.2011, 00:45 |
|||
|
||||
| Lols |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 144 Регистрация: 21.10.2011 Репутация: нет Всего: нет |
Надежный - любой вариант, но мне нравится способ с передачей данных по анонимному каналу.
|
|||
|
||||
| volatile |
|
|||
![]() Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 2107 Регистрация: 7.1.2011 Репутация: 13 Всего: 85 |
Lols, вы посты набираете чтоли?
Так глядишь и экспэртом станете через недельку, другую... |
|||
|
||||
| lv151 |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 916 Регистрация: 11.2.2008 Репутация: 1 Всего: 2 |
А MailSlots как вариант?
|
|||
|
||||
| vol4ek |
|
|||
![]() конь в пальто ![]() ![]() Профиль Группа: Участник Сообщений: 304 Регистрация: 1.5.2011 Где: Минск Репутация: нет Всего: 0 |
||||
|
||||
| bass |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 315 Регистрация: 5.8.2007 Репутация: 2 Всего: 2 |
Реально не корректно заданный вопрос....
В одной программе передавал с помощь майлслота указатели на переменные и использовал функцию writeprocessmemory....... И ПИСАЛ В ПРОЦЕСС НАПРЯМУЮ.....Так что ядро реально надежно работает...... Есть баги конечно но они настолько редко встречаются... В функциях передачи данных между процессами не встречал....))) |
|||
|
||||
| ZVano |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 259 Регистрация: 11.12.2006 Где: Украина, Кривой Р ог Репутация: 1 Всего: 4 |
Если память мне не изменяет, то пайпы блокируют работу приложния ожиданием данных. Для них нужно создавать отдельный поток, который будет заниматься чтением\записью. Pipes использовать муторно. MailSlots же работают по принципу почтового ящика - клиент без задержек положил, сервер без блокировок прочитал в основном потоке приложения. MailSlots реально очень легко использовать. Т.е. MailSlots следует истользовать при передаче небольших сообщений, а pipes при передаче больших потоков данных которые нужно немедленно обработать (типа сокетов). Что использовать - зависит от задачи и разработчика. Кстати, тут забыли упомянуть FileMapping и сокеты. IPC: основы межпроцессного взаимодействия/Обзор технологий Это сообщение отредактировал(а) ZVano - 1.12.2011, 16:39 -------------------- НЕ ФЛУДИМ. Пользуемся кнопками "+" или "-" для выражения своего отношения к теме или сообщению. Гуглим "Как правильно задавать вопросы" |
|||
|
||||
![]()
|
| Правила форума "C/C++: Системное программирование и WinAPI" | |
|
|
На данный раздел распространяются Правила форума и Правила раздела С++:Общие вопросы . Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Chipset, Step, Fixin, GremlinProg, xvr. feodorv. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Системное программирование и WinAPI | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |