私はインターネットストリームを持っていて、そこからリーダーを作成しています
var reader = new BinaryReader(stream);
その後、「同期ワード」を検索するためにバイトを読み取っています
if (reader.ReadByte() != magic[i++])
しかし、時々私はに問題がありReadByte()
ます。リーダーがストリームからバイトを読み取れない場合は例外がスローされると予想しましたが、何もスローしません。(サーバーはシャットダウンされません。バイトを提供しないでください)。
だから私の質問は-このメソッドをタイムアウトする方法は?CancellationTokenでTPLを使用できますが、必要なときにメソッドReadByteをキャンセルする方法がわかりません。