先週会社で、
Bitmap.LockBits メソッド
http://msdn2.microsoft.com/ja-jp/library/5ey6h79d(VS.80).aspx
等を使用して、
Image → 1 bit bitmap(画像を白黒にする)というメソッド(VB2005)を作ってみて、Windowsアプリで確認用のサンプルを作ってみたのですが…
VS2005から起動して適当な画像ファイルでいくつか試して、
なんかめちゃくちゃ実行速度が遅いなーと思って(Releaseビルドですが)、
C# unsafeにしてみたら約5~10倍速くなったと感じて、改めて元のと比較しようと思って、エクスプローラからexeを直接ダブルクリックで起動したら元のでも別に遅くなかったのですが。(むしろ元のほうが速い…)
どうゆうこと??
.vshost.exeが遅くしてるのでしょうか?
改めてサンプルピクチャの木の画像(Tree.jpg)で試してみました。
(どれもReleaseビルドです)
| VS2005から起動 |
VB2005 |
45.3 s |
| C# unsafe |
6.765 s |
| エクスプローラから起動 |
VB2005 |
0.134 s |
| C# unsafe |
0.251 s |
#普通のC#で試すのを忘れてた…
#…ソースコードさらすべき?