Я новичок в IPC, использующий каналы, и я не знаком с обычными шаблонами.Вот настройка, с которой мне приходится иметь дело: Есть клиентский процесс, который распределяет работу по n серверным процессам.После завершения серверы должны отправить свои результаты обратно на сервер.Объем работы, который должен быть распределен, известен с самого начала.
Client
|__Pipe 1_____ Server 1
|
|__Pipe 2_____ Server 2
|
|__ ...
Вот моя идея, как с этим справиться: Серверы запускаются с аргументом командной строки, определяющим имя канала, который онидолжен создать при запуске.Затем клиент пишет в эти каналы для распределения работы.Когда серверы заканчивают свою работу, они записывают свои результаты в канал, из которого они получили работу.Клиент ожидает от n потоков результатов с серверов.Когда все результаты получены, частичные результаты собраны.
Как вы думаете, это имеет смысл?Видите ли вы преимущества в использовании одной трубы в одном из направлений?Как бы вы синхронизировали доступ?У вас есть советы по чтению?