recv または sendall 操作中に (潜在的に) 永久にハングしない TCP サーバーを実装しようとしています。
アクティブなソケットのタイムアウトを指定するだけで十分だと思いましたが、そうではないようです: here を参照してください
では、コードを拡張して次のことを保証するにはどうすればよいでしょうか。
- recv はどのような場合でもハングアップしません
- sendall はどのような場合でもハングアップしません (sendall がハングアップできるかどうかはわかりません)。
どんな提案でも大歓迎です。