0

有名な「開いているファイルが多すぎる」問題に遭遇し、自分のアプリで開かれているファイルを見つけようとしました。そして、責められるのはMapKitのようです!

iOS 6 シミュレーターでアプリを実行し、"Debug > Location > Freeway Drive" をオンにしました。そしてlsof -i | grep MyAppName、開かれた TCP 接続を取得するために使用されます。そして、これは私が得たものです:

iWasteBul 36816 ivanzhu    1u  IPv4 0xf7ae68a3a8b239af      0t0  TCP localhost:49504->localhost:49503 (ESTABLISHED)
iWasteBul 36816 ivanzhu    2u  IPv4 0xf7ae68a3a8b239af      0t0  TCP localhost:49504->localhost:49503 (ESTABLISHED)
iWasteBul 36816 ivanzhu    4u  IPv4 0xf7ae68a3a8b239af      0t0  TCP localhost:49504->localhost:49503 (ESTABLISHED)
iWasteBul 36816 ivanzhu    5u  IPv4 0xf7ae68a3a849b407      0t0  TCP localhost:49505->localhost:49503 (ESTABLISHED)
iWasteBul 36816 ivanzhu    6u  IPv4 0xf7ae68a3a62634ff      0t0  TCP localhost:49506->localhost:49503 (ESTABLISHED)
iWasteBul 36816 ivanzhu   30u  IPv4 0xf7ae68a3a84350e7      0t0  TCP 192.168.1.108:50151->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   31u  IPv4 0xf7ae68a3a939f407      0t0  TCP 192.168.1.108:50148->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   32u  IPv4 0xf7ae68a3a939f407      0t0  TCP 192.168.1.108:50148->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   33u  IPv4 0xf7ae68a3a3482f57      0t0  TCP 192.168.1.108:50149->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   34u  IPv4 0xf7ae68a3a3482f57      0t0  TCP 192.168.1.108:50149->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   35u  IPv4 0xf7ae68a3a8540277      0t0  TCP 192.168.1.108:50150->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   36u  IPv4 0xf7ae68a3a8540277      0t0  TCP 192.168.1.108:50150->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   37u  IPv4 0xf7ae68a3a84350e7      0t0  TCP 192.168.1.108:50151->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   38u  IPv4 0xf7ae68a3a89f468f      0t0  TCP 192.168.1.108:50157->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   39u  IPv4 0xf7ae68a3a89f3f57      0t0  TCP 192.168.1.108:50152->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   40u  IPv4 0xf7ae68a3a89f3f57      0t0  TCP 192.168.1.108:50152->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   41u  IPv4 0xf7ae68a3a75bcdc7      0t0  TCP 192.168.1.108:50153->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   42u  IPv4 0xf7ae68a3a75bcdc7      0t0  TCP 192.168.1.108:50153->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   43u  IPv4 0xf7ae68a3a90729af      0t0  TCP 192.168.1.108:50154->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   44u  IPv4 0xf7ae68a3a90729af      0t0  TCP 192.168.1.108:50154->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   45u  IPv4 0xf7ae68a3a94b2ccf      0t0  TCP 192.168.1.108:50155->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   46u  IPv4 0xf7ae68a3a94b2ccf      0t0  TCP 192.168.1.108:50155->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   47u  IPv4 0xf7ae68a3a4eac0e7      0t0  TCP 192.168.1.108:50156->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   48u  IPv4 0xf7ae68a3a4eac0e7      0t0  TCP 192.168.1.108:50156->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   49u  IPv4 0xf7ae68a3a89f468f      0t0  TCP 192.168.1.108:50157->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   50u  IPv4 0xf7ae68a3a94754ff      0t0  TCP 192.168.1.108:50167->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   51u  IPv4 0xf7ae68a3a849accf      0t0  TCP 192.168.1.108:50158->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   52u  IPv4 0xf7ae68a3a849accf      0t0  TCP 192.168.1.108:50158->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   53u  IPv4 0xf7ae68a3a76c868f      0t0  TCP 192.168.1.108:50159->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   55u  IPv4 0xf7ae68a3a76c868f      0t0  TCP 192.168.1.108:50159->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   56u  IPv4 0xf7ae68a3a66a1277      0t0  TCP 192.168.1.108:50160->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   57u  IPv4 0xf7ae68a3a66a1277      0t0  TCP 192.168.1.108:50160->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   58u  IPv4 0xf7ae68a3a93d7f57      0t0  TCP 192.168.1.108:50161->123.103.0.159-bj-cnc:https (ESTABLISHED)
iWasteBul 36816 ivanzhu   59u  IPv4 0xf7ae68a3a93d7f57      0t0  TCP 192.168.1.108:50161->123.103.0.159-bj-cnc:https (ESTABLISHED)

そして、ファイルを書き込もうとすると、コードが「開いているファイルが多すぎます」というエラーを受け取り始めるまで、リストはどんどん大きくなり続けました。

そして、iOS 5.1 シミュレーターで同じテストを行ったところ、問題ないように見えました (追加の接続はありません)。

iWasteBul 37547 ivanzhu    1u  IPv4 0xf7ae68a3a8a00dc7      0t0  TCP localhost:51490->localhost:51489 (ESTABLISHED)
iWasteBul 37547 ivanzhu    2u  IPv4 0xf7ae68a3a8a00dc7      0t0  TCP localhost:51490->localhost:51489 (ESTABLISHED)
iWasteBul 37547 ivanzhu    4u  IPv4 0xf7ae68a3a8a00dc7      0t0  TCP localhost:51490->localhost:51489 (ESTABLISHED)
iWasteBul 37547 ivanzhu    5u  IPv4 0xf7ae68a3a8a0cdc7      0t0  TCP localhost:51491->localhost:51489 (ESTABLISHED)
iWasteBul 37547 ivanzhu    6u  IPv4 0xf7ae68a3a8a014ff      0t0  TCP localhost:51492->localhost:51489 (ESTABLISHED)

それが私のアプリの問題ではないことを確認するために、シミュレーターで実行中のすべてのアプリを強制終了し、組み込みの「マップ」アプリを起動して、同じ結果を得ました。しかし、「マップ」アプリがインストールされていないため、iOS 5.1 シミュレーターで同じテストを行うことができませんでした。

私の質問は次のとおりです。

  1. TCP 接続を開くために適切なツールを使用していますか?
  2. これは iOS 6 シミュレータ (および潜在的にデバイス) のバグですか?
  3. それに対処する方法は?

どんな助けでも大歓迎です!

4

1 に答える 1

0

Ivan さん、それは iOS 6.0.1 にあると言えます。私はフォーラムを運営しており、1 日に数回、サーバーの DDoS 保護モジュールから電子メールを受け取ります。そのような IP は「接続が多すぎるためにブロックされました」、50 以上ですが、通常は 80 近くです。

これらの人々の唯一の共通点は、彼らが iOS 6.0.1 を実行する iPad を使用していることです。6.0.2 接続は 1 つしか確認していないため、6.0.2 で問題が修正されているかどうかを確認できません。

于 2013-01-06T03:01:06.517 に答える