androidのソケット通信プログラムを作成しています。
何度もソケットの接続・切断を繰り返していると、以下のエラーが発生します。
Socket.connect メソッド(接続)で発生しています。
socketは毎回.closeメソッドで切断しています。
このようになると、端末を再起動しない限りソケット接続を再度行なうことはできない模様です。このエラーの発生理由がわかりません。お詳しい方おられましたら何卒よろしくお願いします。
ちなみに利用しているandroid端末はKYL21(京セラ androidバージョン4.0.4)です。
01-09 09:06:46.418: W/System.err(29936): java.net.ConnectException: failed to connect to /192.168.10.12 (port 50000): connect failed: ENOBUFS (No buffer space available)
01-09 09:06:46.418: W/System.err(29936): at libcore.io.IoBridge.connect(IoBridge.java:114)
01-09 09:06:46.418: W/System.err(29936): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:192)
01-09 09:06:46.418: W/System.err(29936): at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:460)
01-09 09:06:46.418: W/System.err(29936): at java.net.Socket.connect(Socket.java:838)
01-09 09:06:46.418: W/System.err(29936): at java.net.Socket.connect(Socket.java:791)
01-09 09:06:46.418: W/System.err(29936): at com.example.simple_test.Wifi_Service.Socket_Connect(Wifi_Service.java:2033)
01-09 09:06:46.428: W/System.err(29936): at com.example.simple_test.Wifi_Service$10.run(Wifi_Service.java:1938)
01-09 09:06:46.428: W/System.err(29936): Caused by: libcore.io.ErrnoException: connect failed: ENOBUFS (No buffer space available)
01-09 09:06:46.428: W/System.err(29936): at libcore.io.Posix.connect(Native Method)
01-09 09:06:46.428: W/System.err(29936): at libcore.io.BlockGuardOs.connect(BlockGuardOs.java:85)
01-09 09:06:46.428: W/System.err(29936): at libcore.io.IoBridge.connectErrno(IoBridge.java:127)
01-09 09:06:46.428: W/System.err(29936): at libcore.io.IoBridge.connect(IoBridge.java:112)
01-09 09:06:46.428: W/System.err(29936): ... 6 more
No.1ベストアンサー
- 回答日時:
connect failed: ENOBUFS (No buffer space available)
とあるのだから、
接続の記録が、どこかのバッフアにどんどん溜まっていって、
バッファを使いきったのだと思います。
再起動すると、
バッファも空になるので、その場所を使って
接続記録を残しながら正常に接続できる
と考えます。
もし、バッファの使用状況が見れるなら使われているアドレスを調べてみれば
はっきりします。
この回答への補足
androidのWifi通信でsocket通信を行ないます。開発環境はeclipseです。この環境で上記バッファに関する調査は可能でしょうか?いろいろ調べてみましたが、たどり着けません。。よろしくおねがいします。
補足日時:2015/01/17 17:15お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 英語 この英文の意味を教えてください 3 2023/07/07 20:36
- その他(プログラミング・Web制作) laravel 本番環境でメールが送れません。 1 2023/02/17 17:57
- TOEFL・TOEIC・英語検定 英文法(他動詞・自動詞の解釈)you pre-register online 1 2023/03/09 00:18
- Gmail 【お助け!】サーバーからのメール送信でGmailに送信されない問題について 1 2023/06/20 22:03
- Windows 10 VirtualBox 7のゲストOSでの物理HDDパーティションのマウント方法 2 2023/05/04 13:01
- Java JavaでWebページ作成 7 2023/07/21 21:09
- 英語 This paper focuses on the literature relevant to t 2 2022/12/02 09:41
- JavaScript セレクトを全て選択されていないと、文字によるエラーメッセージを表示させるコードを調べています 2 2023/06/22 15:48
- オンラインゲーム ラグナロクオンラインですがAudio System Init Failedとでて起動しません。何故で 1 2022/11/17 05:05
- au(KDDI) au pay バーコード読取りエラー エラー後aupay使用不可状態 2 2023/02/23 07:11
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
「オプション機能」が無くなった
-
TOYOTAWalletアプリを起動する...
-
Androidってなぜアプリや場面に...
-
iPhone11を使ってます。 楽天銀...
-
写真のポーズ変える事が出来る...
-
アプリで作った単語帳を紙に印...
-
ゲームアプリ内の広告について
-
マッチングアプリで知り合って...
-
マッチングアプリってハイスペ...
-
履歴書の作成で志望動機の作成...
-
iPhoneのファイルアプリは互換...
-
私はHをしたことがありません。...
-
ファミペイのアプリから選択で...
-
Windows10アプリのアンインスト...
-
スマホで委任状の作り方
-
Player.exeが開けない
-
WindowsのiTunes はアプリの評...
-
メモ帳アプリ
-
無料アプリで一行の文字数と行...
-
Androidアプリで、1つのアプリ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
「オプション機能」が無くなった
-
Androidってなぜアプリや場面に...
-
メモ帳アプリ
-
写真のポーズ変える事が出来る...
-
iPhone11を使ってます。 楽天銀...
-
iPhoneに最初からあるアプリ(iM...
-
アプリで作った単語帳を紙に印...
-
iOSの広告ブロックアプリ
-
アンドロイドとiOSの天気アプリ...
-
皆さんに聞きたいことがありま...
-
Player.exeが開けない
-
iPhoneのファイルアプリは互換...
-
広告ブロックアプリ入れてみた...
-
履歴書の作成で志望動機の作成...
-
マッチングアプリで知り合って...
-
あすけん は、有料アプリですか...
-
ファミペイのアプリから選択で...
-
少しお伺いしたい義が御座いま...
-
文章を自動で整えてくれるアプリ
-
TOYOTAWalletアプリを起動する...
おすすめ情報