接続されたソケットごとに 1 つのスレッドを使用することを避けるために、ソケットで BeginReceive/EndReceive を使用できるように、常に独自のシリアライザー/デシリアライザーを構築してきました。かなり時間のかかる作業です。
私は protobuf-net を調べ始めましたが、シリアライゼーション/デシリアライゼーションを自分で書かなくても非同期ソケットで使用したいと考えています。ブロッキング操作をラップするために、ソケットごとに 1 つのスレッドを使用する必要がない方がよいと思います。
クイックスタートを見ると、まさにそれを行っています (クライアントごとに 1 つのスレッド)。他に方法はありませんか?
私の質問は、protobuf-net に関するものではなく、シリアライゼーションとソケット全般に関するものです。しかし、protobuf-net の例は大歓迎です。