C# ограничение по времени ожидания NamedPipeServerStream

Артем10 лет в сервисе
Данные заказчика будут вам доступны после подачи заявки
31.07.2015

Используем синхронный код ожидания ответа из канала:

NamedPipeServerStream replyPipe = new NamedPipeServerStream("name",

PipeDirection.In, NamedPipeServerStream.MaxAllowedServerInstances);

replyPipe.WaitForConnection();

При этом не видим возможности ограничивать время ожидания. Нужно сделать, чтобы можно было задать таймаут и далее в данной же функции (где запускалось ожидание) обработать случай, если НЕ ДОЖДАЛИСЬ. Видимо, для этого нужно использовать асинхронные пайпы. Нужен исходный код данного механизма.