C#でCPU使用率を取得する

C#で実行中PCのCPU使用率を取得しようとした場合、下記の様なコードで取れる、と思われます。System.Diagnostics 名前空間を using しておいてください。

パフォーマンスカウンタから値を取得するhttp://dobon.net/vb/dotnet/system/readperformancecounter.html

PerformanceCounter pfcounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
float cpu = pfcounter.NextValue();

……が、なぜか0しか取得出来ない。

MSDNやGoogleに頼ってみてもなかなか明確な答えが見つけられなかったものの、
どうも「最初の1回目の値は使えない」「すぐには値が取れない」らしい。

いろいろ試した結果、以下がCPU使用率を正常に取得できたコードです。
Visual Studio Express 2013 for Windows Desktop + .netFramework 4.5で動作確認済み。

PerformanceCounter pfcounter = new PerformanceCounter("Processor", "% Processor Time", "_Total");
float cpu = pfcounter.NextValue();
Thread.Sleep(1000);
cpu = pfcounter.NextValue();

とりあえず動いた、という大変アレなコードですが忘備録として。
(PerformanceCounter インスタンスの nextValue() の計算方法は PerformanceCounterType 列挙体によってが制御されているので、その辺りが関係ありそう? )

Share this…

PHPカンファレンス2014と最近の写真

PHPカンファレンス2014に参加してきました。徳丸 浩さんのセキュリティについての話やHHVM/Hack Langの話、各種フレームワーク、サービスが大きくなっていく際のスケールアウト、その他さまざまな視点・分野での発表が有り大変刺激的でした。大きく手が入るらしいPHP NG楽しみですね。CI関連も頑張って少しずつ導入していきたい。

技術的に興味深いのもそうですが、「楽しそうだな」「PHPが好きなんだな」っていう所も感じられたのが和やかな感じでよかったですね。

そんな感じで最近の写真です。横浜の氷川丸、神奈川県 伊勢原の大山など。

照明 氷川丸 氷川丸 機関部 氷川丸 三等客室 氷川丸 時計 大山 大山 鳥居 大山 頂上本社 大山 ケーブルカー

Share this…

HTC J OneをAndroid 4.4にアップデートしてブラウザ速度比較してみた

今更ながらHTC J One (HTL22)をAndroid 4.4.2にアップデートしてみたので、ブラウザ周りの速度をJavaScripベンチマークで比べてみます。

結果としてはAndroid標準ブラウザはそれなりに高速化、もともと速いGoogle Chromeは特に変わらずといった所です。Chromeの方が速いのは知っているけど、UIは標準ブラウザ派……って方(私です)は、アップデート後に高速化が実感できるかもしれません。

Octane 2.0
Kraken JavaScript Benchmark (version 1.1)

HTC J One Android4.2 標準ブラウザ
Octane 2.0: 1666 (値が大きい程高速)
Kraken 1.1: 17144.2ms +/- 1.5% (値が小さい程高速)

HTC J One Android4.2 Google Chrome 37.0.2062.117
Octane 2.0: 3531
Kraken 1.1: 9248.8ms +/-4.5%
Android4.2 Chrome Octane Android4.2 Chrome Kraken

HTC J One Android4.4 標準ブラウザ
Octane 2.0: 2222
Kraken 1.1: 12708.2ms +/-1.4%
Android4.4 AndroidBrowser Octane Android 4.4 AndroidBrowser Kraken

HTC J One Android4.4 Google Chrome 37.0.2062.117
Octane 2.0: 3568
Kraken 1.1: 9573.6ms +/-2.6%
Android4.4 Chrome Octane Android4.4 Chrome Kraken

4.2の標準ブラウザに画像が無いのは撮り忘れです。
バッテリーアイコンが4.4で変わっていますね。

以下参考リンク
HTC J One HTL22 OSアップデート情報 (公式)
Android 4.4アップデート – HTC J One HTL22まとめWiki

あまり触れられていない点として、天気表示やロック画面のUIにも変化が有ります。緊急通報ボタンが最下部から上に移り、誤爆が減りそうです。
HTC J One Android4.4 Clock HTC J One Android4.4 Lock

Share this…