質問: mac osxでアプリケーションがハングするトラブルシューティング 最近、osxのさまざまなアプリでスピニングビーチボールをたくさん入手しています。右クリックすると頻繁に発生するようですが、これは単一のアプリに限定されません。これはsafari、adium、netnewswireなどで発生します。私の直感では、これを引き起こしている一般的な機能/プラグイン/ルーチンがいくつかあります。おそらく、サードパーティの拡張機能または私が有効にした他の何かからです。この種の問題のトラブルシューティングを試みるための最善の方法は何ですか?ハングしたアプリをダンプして、何をしようとしているのかを確認できますか?これを引き起こしている可能性があるものを追跡するために私ができることがいくつかありますか?.
回答: 回答ありがとうございました、彼らは非常に役に立ちました。 jtbandesは私に問題を解決するための最初のステップを与えてくれましたが、それが他の人を助ける場合に備えて、他の部分の詳細に立ち入りたいと思いました。私はadiumを使って合理的に再現可能な方法で問題を発生させることができました。基本的に、アプリを起動し、会話を開き、テキストを入力してから、テキストの一部を右クリックします。スピナーは発売後初めて、1分以上続きます。そこで、spin controlを起動し、adiumのみをターゲットにする設定に入り、手順に従って問題を引き起こしました。問題のテキストレポートを取得することができ、私が期待したのは問題であることがわかりました。 5531 thread_7203 5531 0x30b9 5531 0x3192 5531 nsapplicationmain 5531 -[nsapplication run] 5531 -[nsapplication sendevent:] 5531 -[nswindow sendevent:] 5531 -[nstextview rightmousedown:] 5531 -[nsview rightmousedown:] 5531 -[nsmenu _popupmenuwithevent:forview:] 5531 -[nsmenu _popupcontextmenu:withevent:forview:] 5531 -[nsmenu _popupcontextmenu:withevent:forview:withfont:] 5531 -[nscarbonmenuimpl _popupcontextmenu:withevent:forview:withfont:] 5531 _nspopupcarbonmenu1 5531 _nspopupcarbonmenu2 5531 _nspopupcarbonmenu3 5531 _contextualmenuinsertitems 5531 contextualmenuinsertitems(menudata*, unsigned short, aedesc const*, contextualmenuhelp const*, unsigned long*, opaquecontextualmenuitemsref**) 5531 tcontextualmenupluginlist::getplugins() 5531 tcontextualmenuplugin::loadcontextualmenuplugins(fsref const&, __cfarray*) 5531 tcontextualmenuplugin::loadcmpluginsfromcfplugin(fsref const&, __cfarray*) 5531 0x1d1ee0d6 そのため、プラグインで問題が発生しているように見えましたが、その詳細についてはコンテキストが不足していました。そこで、adiumを再起動しましたが、今回はアクティビティモニターを開いてプロセスを選択し、[検査]-> [ファイルとポートを開く]を使用して、アプリが具体的に何を処理しているかを監視しました。問題を生成する手順を繰り返したところ、リストから次の情報を取得できました(開いた新しいファイル/ポートがリストの最後に表示されるため、問題を見つけるには、リストの最後を確認するのが最も簡単です。リスト):/system/library/frameworks/carbon.framework/versions/a/frameworks/hitoolbox.framework/versions/a/resources/english.lproj/localized.rsrc /users/tim/library/contextual menu items localhost:61506->localhost:26165 これから、ローカルのコンテキストメニューアイテムディレクトリ内のアイテムを調べて、問題の原因を特定することができました。助けてくれてありがとう。