Я просмотрел всю сеть, но не могу найти ответ на следующий вопрос.
У меня есть экземпляр C # / .NET NamedPipeClientStream в клиентской программе, и рабочий поток вызывает NamedPipeClientStream.Read (byte [], int, int) для получения данных с сервера. Сервер отправляет обновления данных клиенту.
Чтение - это блокирующий вызов. Если я хочу закрыть клиент, есть ли способ отменить / выйти из вызова Read? Я попытался вызвать Close для экземпляра именованного канала, но он не влияет на поток, вызвавший Read.
Я думаю, что есть способ отменить вызов Read. Если нет, то похоже, что это очень плохо спроектированный API, потому что ваша программа находится на кону.
Любая информация очень ценится.
-Крис