4

アプリケーションに ICQ# ライブラリ (オープン ソース) を追加しました。しかし、それを介して ICQ サーバーに接続すると、CPU の使用率が増加します (最大 30%)。そのため、ICQ# ライブラリの何かが CPU を大量に使用しています。しかし、それが何であるかを判断してCPUの使用量を減らす方法がわかりません。

4

3 に答える 3

2

オープン ソースで、プロジェクトにコードを追加した場合。プロファイラーをアタッチして実行します。

于 2012-11-12T16:48:31.450 に答える
0

最も単純なアプローチは次のとおりです。

  1. デバッガーでプログラムを実行します。
  2. そして、ある時点でデバッガーに侵入します。
  3. どこにいてもコールスタックを見てください
  4. 手順2〜3を繰り返します

これを2、3回行うだけで、実行時間の大部分がどこで費やされているかを非常によく理解できます。実行時間の大部分が1つの関数に費やされている場合、デバッガーに侵入するたびに、その関数は呼び出しスタックに存在します。

于 2012-11-12T17:58:37.387 に答える
0

「icq_sharp\IcqSharp.Util\Timer.cs」ファイルにあります。関数を参照してください: private void DoWorker()。遅延のないループがあります。追加するだけThread.Sleep(10);

于 2013-10-22T12:15:38.107 に答える