【Python3】「OSError: [Errno 40] Message too long」が発生した場合の対処法
UDPでソケット通信を行なっている際に「OSError: [Errno 40] Message too long」のエラーが発生したので、
対処法を説明したいと思います。
まず以下のコマンドで現在の最大バイト数を確認します。
sysctl -a | grep udp.maxdgram
容量を確認したら、以下のコマンドでサイズを変更しましょう。
sysctl -w net.inet.udp.maxdgram=65535
これで設定したサイズ以下のデータ量であれば、「OSError: [Errno 40] Message too long」のエラーは発生しなくなります。
おまけ
OSごとのデフォルトの最大バイト数は以下の通りです。
OS | バイト数 |
Mac | 9216 |
Linux | 131071 |
Windows | 制限なし |
ディスカッション
コメント一覧
まだ、コメントがありません