Здравствуйте, Аноним, Вы писали:
А>Здравствуйте!
А>Вопрос к опытным Win API программистам, или просто к тем знает ответ
А>Существует небольшая порция данных — 380 байт. Её необходимо элегантно и с максимальной скоростью отсылать одному процессу, а тот в свою очередь должен отсылать её к тому, кто её отослал (т.е. еще и синхронизация). Через какой IPC её бы сделать.
А>ЗЫ довольно часто пересылается: около 1000 раз в секунду.
ИМХО лучше всего использовать WM_COPYDATA.
With best regards
Pavel Dvorkin
Здравствуйте!
Вопрос к опытным Win API программистам, или просто к тем знает ответ

Существует небольшая порция данных — 380 байт. Её необходимо элегантно и с максимальной скоростью отсылать одному процессу, а тот в свою очередь должен отсылать её
к тому, кто её отослал (т.е. еще и синхронизация). Через какой IPC её бы сделать.
ЗЫ довольно часто пересылается: около 1000 раз в секунду.
Спасибо.
А>Вопрос к опытным Win API программистам, или просто к тем знает ответ
А>Существует небольшая порция данных — 380 байт. Её необходимо элегантно и с максимальной скоростью отсылать одному процессу, а тот в свою очередь должен отсылать её к тому, кто её отослал (т.е. еще и синхронизация). Через какой IPC её бы сделать.
Можно два эвента + именованный файл-маппинг, правда я не знаю, насколько быстро это будет.
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте!
А>Вопрос к опытным Win API программистам, или просто к тем знает ответ
А>Существует небольшая порция данных — 380 байт. Её необходимо элегантно и с максимальной скоростью отсылать одному процессу, а тот в свою очередь должен отсылать её к тому, кто её отослал (т.е. еще и синхронизация). Через какой IPC её бы сделать.
А>ЗЫ довольно часто пересылается: около 1000 раз в секунду.
А>Спасибо.
сокет
Здравствуйте, sercher, Вы писали:
S>Здравствуйте, Аноним, Вы писали:
[...]
S> сокет
Спасибо всем ответевшим.
Действительно WM_COPYDATA и сокет достаточно быстры (два эвента + именованный файл-маппинг плохо работали, если оперативной памяти было мало, но это, видимо, недостаток моей реализации). Тем более, что после переделки структуры шэфом

данные малость выросли и теперь они можгут быть до 1400 байт, а частота обмена до 5000(!) раз в секунду (правда и качество тоже выросло

)
Еще раз всем большое человеческое СПАСИБО.
Здравствуйте, Pavel Dvorkin, Вы писали:
А>>ЗЫ довольно часто пересылается: около 1000 раз в секунду.
PD>ИМХО лучше всего использовать WM_COPYDATA.
В плане простоты — да, но в плане скорости два события и разделенная память быстрее.
... << RSDN@Home 1.1.4 beta 3 rev. 185>>
Здравствуйте, Аноним, Вы писали:
А>Здравствуйте, sercher, Вы писали:
S>>Здравствуйте, Аноним, Вы писали:
А>[...]
S>> сокет
А>Спасибо всем ответевшим.
А>Действительно WM_COPYDATA и сокет достаточно быстры (два эвента + именованный файл-маппинг плохо работали, если оперативной памяти было мало, но это, видимо, недостаток моей реализации). Тем более, что после переделки структуры шэфом
данные малость выросли и теперь они можгут быть до 1400 байт, а частота обмена до 5000(!) раз в секунду (правда и качество тоже выросло
)
А>Еще раз всем большое человеческое СПАСИБО.
Ещё есть вариант использывать именнованный pipe. Синхронизация тогда обеспечиться ОС. А реализовано это при помощи отображения в пямяти. Так же появляеться возможность разносить процессы в сети, т.е. они работают на разных машинах. Но тогда это естественное через отображение в память не реализуется.