問題タブ [cpu-usage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
vb.net - while ループで CPU 使用率を制限する方法
while ループの CPU をどのように制限しますか?
この場合、while ループ内のコードは次のとおりです。
しかし、今、ここで問題があります。このループにより、毎秒、1 秒に 1 回、while ループが実行され、wait
サブルーチンがこの遅延を引き起こしています。
これが占有しているCPUを制限するにはどうすればよいですか? 何らかの理由で、私のタスク マネージャーは、この単純なタスクを実行するのに 50 個の CPU を使用していると言っていますが、おそらく 1 つか 2 つしか必要としないはずです。 2 年前のラップトップであることを考えると、これは奇妙です。
どのユーザーもびっくりさせたくないのですが、最近の人々の様子を知っていると....
とにかく、言語は vb.net です。誰か助けてくれませんか?
ありがとう!
EDIT:明確にするために、そのコードはwhileループ自体の中にありませんが、サブルーチンの呼び出しは、つまりwait(1000)
asp.net - ASP.NET HttpWebRequest はリクエストの送信を停止し、CPU 使用率が高くなります
古い ASP.NET アプリケーションがあります。httpWebRequest をリモート REST サーバーに送信し、XML を取得します。ほとんどの場合、アプリケーションは正常に動作します。最近、1 日に数回、CPU 使用率が高い問題が発生しました。
CPU 使用率が高い時間帯に、これらの httpWebRequest 接続を監視しました (w3wp プロセスの netstat をチェックすることによって)。最初に接続が「ESTABLISHED」から「CLOSE_WAIT」状態に変化し、接続がタイムアウトした後、それらの接続が 1 つずつ消え、その後接続がなくなります。
IIS をリセットした後、w3wp.exe プロセスが再び開始されたとき、まだ httpWebRequest ターゲット サーバーへの接続を見つけることができませんでした。そのため、CPU 使用率は常に高いレベルにとどまっています。数回のリセットの後でも、問題は解決しません。いくつかの接続が httpWebRequest ターゲット サーバーへの接続を開始するまで、CPU 使用率が低下しました。
コードが httpWebRequest を適切に処理していないことが問題である可能性があると実際に考えたので、ここに別の質問を投稿しました。.
その質問で述べたように、 のタイムアウト例外もたくさん見つかりましたSystem.Net.HttpWebRequest.GetResponse()
。CPU 使用率が非常に高い場合、5 分以内に 3500 の同じ例外が見つかりました。
何がこの種の問題を引き起こす可能性があり、何が薬である可能性がありますか? アプリケーションがリクエストを送信しないのはなぜですか (netstat に接続がないため)。
念のため、ソースコードを次に示します。
c++ - Windows(win32)でスレッドごとのCPU使用率を取得する方法
Win32 API 関数、C++ または Delphi サンプル コードを探して、スレッドの CPU 使用率 (パーセントおよび/または合計 CPU 時間) (プロセスの合計ではない) を教えてくれます。私はスレッドIDを持っています。
Sysinternals Process Explorer がこの情報を表示できることは知っていますが、プログラム内でこの情報が必要です。
vb6 - VB 6 で現在の CPU と RAM の使用状況を取得するには?
VB 6コードでCPUとメモリの使用量を取得する方法は? ありがとう!
c - CからLinuxでPIDによってプロセスのCPU使用率を計算する方法は?
Linuxで特定のプロセスIDのCPU使用率を[Cで]プログラムで計算したい。
特定のプロセスのリアルタイムの CPU 使用率を取得するにはどうすればよいですか?
さらに明確にするために:
- 提供されたプロセス ID またはプロセスの CPU 使用率を判断できるはずです。
- プロセスは子プロセスである必要はありません。
- 「C」言語でのソリューションが必要です。
c - OSXでのCPU時間の取得
2つのsqliteDBを比較し、json形式でdiffを生成するOSX用のObjective-Cアプリケーションがあります。dbは非常に大きいです(多くのフィールドを持つ10,000アイテム)。このアプリケーションは約55秒で実行される場合があります(CPUの95%を使用)。場合によっては約8分かかります(CPUの12%を使用)。これは同じDBのものです。CPUのごく一部のみを使用している場合は、残りを使用できます。プロセスよりも優先されるものはないようです。コマンドに「nice-20」を追加すると、CPU使用率を確実に取得できるようです。私の質問は
他に何もCPUを使用していない場合、なぜ私のアプリはそれを利用しないのですか?
これを変更するためにプログラムでできることはありますか?
これを変更するためにOSXにできることはありますか?
.net - .NETがCPUを大量に使用するのはなぜですか?これは問題ですか?
(これは一般的な架空の質問であり、.NETは豚であり、理由で物乞いをしていると私は嘆きました。実際には、私の特定のアプリについての質問ではありませんでした。)
現在、C#で古いC++コードを書き直しています。すべてのレガシーアプリケーションを移植しています。最大3%のCPUを使用するC++アプリケーションがあります。ほとんどの場合、それらは何も使用しません。次に、コードを取得し、コピーして貼り付けてから、C#構文と.NETライブラリ、およびBAMに再フォーマットします。50%のCPU。これの理由は何ですか?最初はJITだと思っていたのですが、各コードパスを練習して、全部JITした後も、同じ問題です。
また、メモリが大幅に増加していることに気づきました。フルロードで9MBを使用していたアプリは、10 MBで開始し、50MBで実行するようになりました。ハードウェアは安いと思いますが、その原因を知りたいです。それは警報の原因ですか、それとも.NETはそれだけの豚ですか?
スキート射撃への1つの回答を更新
私はC#に精通しています。私は物事をLinqなどに変更します。私は通常、コードを取得して行数を減らします。.NETでC++の人が間違っていることの例をもう少し挙げていただけますか?
アップデート2
これは一般的な質問でしたが、問題のある特定のアプリは次のとおりです。
パラドックスデータベースからデータを取得するためにODBCドライバーを使用するスレッドがあります。次に、Linqを使用してこれをSQLデータベースに変換し、投稿します。ANTSプロファイラーを実行しましたが、データセットの入力に最も時間がかかるようです。続いてLinqの投稿。私の領域のいくつかがリフレクションの使用法であることは知っていますが、これなしで必要なことを行う方法がわかりません。文字列を文字列ビルダーに変更する予定です。これら2つの間に違いはありますか?
と
すべての文字列の連結をフォーマット文字列に変更しました。それは頭上で減少しませんでした。データリーダーとデータアダプターおよびデータセットの違いを知っている人はいますか?
mysql - How do I check if my mysql database causes slow down
I have around 3 websites residing in a server which is being shared with other teams. I have been notified that there is a huge increase in CPU usage and we need to lower it down. I doubt my websites are causing this.
I have been using SHOW FULL PROCESSLIST in MySQL and 90% of the time shows queries from other databases. But I think executing multiple SHOW FULL PROCESSLIST commands is not enough proof. How can I verify that my databases aren't CPU hogs?
silverlight - SilverlightMultiScaleImage制御のバグとCPU使用率
同じUserControlでアニメーションとMultiScaleImageコントロールを使用するにはどうすればよいですか?
MultiScaleImageとアニメーションを同じUserControlに配置すると、常に高いCPU使用率が得られることがわかりました。それはMultiScaleImageコントロールのバグですか?これがサンプルプロジェクトです。(グリッド、MultiScaleImageControl、およびフェードする長方形のみ)
なぜCPU使用率が高いのですか?アニメーションの再生中に、UserControlはLayoutUpdatedイベントを発生させ、MultiScaleImageはそのイベントをキャッチしてそれ自体を再描画します。したがって、MaxFrameRate = 60(デフォルト値)の場合、MultiScaleImageは毎秒約60回再描画され(MultiScaleImage.LayoutUpdatedは約60回起動されます)、CPU使用率が高くなります。
- MaxFrameRate = 10の場合、最大20%のCPU
- MaxFrameRate = 30の場合、最大40%のCPU
- MaxFrameRate = 60(デフォルト)の場合、最大85%のCPU
MultiScaleImageは、SizeChangedイベントでのみそのefを再描画(またはCPUを集中的に使用するものを再計算)するべきではありませんか?それ以外の場合、アニメーションを使用できないのに、なぜこのコントロールを使用するのですか?
c++ - MacOSXでスレッドごとのCPU使用率を取得する方法
OSXの特定のスレッドによって消費されるサイクルを説明するOSレベルのAPIを探しています。
これはこの質問(および回答)に似ていますが、OSXにあります。