HttpListenerはあなたに応答ストリームを与えますが、flushを呼び出すことは何も意味しません(そして、ソースからは実際に何もしないのでクリアです)。 HTTP APIの内部を調べると、これはHttpListener自体の制限であることがわかります。HttpListener応答ストリームをフラッシュする方法は?
誰でもHttpListenerの応答ストリームをリフレッシュする方法を正確に知っています(リフレクションまたは追加のP/Invokesの可能性があります)。
更新:フラッシュオプションがない場合、またはバッファサイズを定義する能力がない場合は、httpストリームを配信できません。
質問はなぜ機能していません...しかし、できるだけ早く何かを送ることが重要な場合はhttpストリーミングを想像してください。チャンクされたデータは、ここではオプションではありません。要求を完了する前に実際に何かを送信しているHttpListenerが、かなり大きな構成不可能なバッファを使用しています。 – Mash
btw、ASP.NETは要求時にOKをフラッシュします。ASP.NETは、完全なPOST本体が取得される前にInputStreamコンテンツを取得するためにいくつかのハックを必要としますが、OutputStreamは正常に動作します。 – Mash
HTTPは実際にストリーミングプロトコルではありません。これは、インターネット上でテキストを送信することを目的としているため、ハイパーテキスト送信プロトコルという名前が付けられています。あなたがストリーミングをしたいなら、私はソケットを提案します。または、コンテンツをストリーミングするときに、パケットを小さくして制御するためには、もう少し良い方法があります。 –