Я не уверен, уместно ли это для вашего обсуждения, потому что я никогда не использовал именованные каналы .net, но я помню, что у конечных точек сокета .net tcp была известная ошибка, в результате которой иногда возникали прекращено без видимой причины ", и, к сожалению, официальный ответ MS был" обходным путем ", который включал проверку того, что сокет все еще был активен перед отправкой сообщения через него, и повторное открытие его в случае, если это не так. Я хотел бы думать, что конечные точки именованных каналов не так ненадежны, как «надежные конечные точки TCP», но вы можете изучить «известный периодический сбой сокета TCP», чтобы узнать, распространяется ли он также на именованные каналы.
Извините, что на самом деле это не ответ, и я не хочу предположить, что вам, возможно, придется добавить неэффективность проверки, чтобы убедиться, что она работает перед отправкой сообщения, и так далее.