VB6.0 VS VB2005   速度対決!

仕事ネタに近いが、VBの話。

 個人的に興味があったので、自分でコーディングして確かめてみました。
なるべく公正に調査できるよう、実行速度調査TOOLをVB6で開発し、
それをVB2005へコンバートして、同じロジックで勝負してみました。
(変数型のビット情報が変更されたので、厳密な比較は難しい)

VB2005へコンバートしたソースは、下記に付けたので参考にして下さい。
当然ですがVB6.0は、IntegerでなくLongを使っています。

で、実行結果
 ↓
a0001863_2382673.jpg

[VB6.0での結果]


a0001863_239029.jpg

[VB2005での結果]


この結果をみると、明らかにVB2005は遅い。
やはり、VB6.0と違い、中間層に.NETフレームワークが存在することが
挙げられるが、ここまで顕著に差が出ると、かなり悩ましいですね。
ここまで差があると、やはりプロとしては.NETへの移行を躊躇うのも
納得してしまうといったところだろうか・・・。

※実行画面に10秒と記載していますが、実際には3秒です(笑





-----------------------------------------------------

Option Strict On
Option Explicit On
Friend Class frmMain
Inherits System.Windows.Forms.Form
Private Declare Function timeGetTime Lib "WINMM.dll" () As Integer

Private Sub Command1_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles Command1.Click
Dim intCount As Integer 'カウンタ
Dim lngDate As Integer '時間計測用
Dim intArry() As Integer 'カウンタ格納用
Dim intCNT As Integer 'カウンタ

'カーソルを砂時計
Me.Cursor = System.Windows.Forms.Cursors.WaitCursor

Me.Command1.Text = "計測中。。。"
If Me.Check1.CheckState = 0 Then
ReDim intArry(0)
Else
ReDim intArry(2)
End If
For intCNT = LBound(intArry) To UBound(intArry) Step 1
lngDate = timeGetTime() + 3000 '3秒後を計算しておく
intCount = 0
Do Until lngDate <= timeGetTime()
If intCount Mod 1000 = 0 Then
'1000回に一回、
'処理をフォアに戻す
System.Windows.Forms.Application.DoEvents()

End If
intCount = intCount + 1

Loop
'結果を格納
intArry(intCNT) = intCount

Next intCNT
intCount = 0
'結果から平均を求める
For intCNT = LBound(intArry) To UBound(intArry) Step 1
intCount = intCount + intArry(intCNT)
Next intCNT
intCount = CInt(intCount / CInt(UBound(intArry) + 1))
Me.Label1.Text = VB6.Format(intCount, "#,##0")

Me.Command1.Text = "計測開始"

'カーソルを戻す
Me.Cursor = System.Windows.Forms.Cursors.Default

End Sub
End Class
[PR]
by tumugu_32 | 2007-05-02 23:12 | 仕事


徒然なるままに夜明


by tumugu_32

プロフィールを見る
画像一覧

フォロー中のブログ

underground-...
R34 GT-VなBlog
馬鹿と変態は紙一重(馬鹿...

カテゴリ

全体
ニュースとか
面白いもの
戯れ言
謎w
自作ソフト
欲しいかも
旅行
ネタ
食べ物ネタ
自転車
仕事
映画
写真
未分類

その他なリンク

その他のジャンル

ファン

記事ランキング

ブログジャンル

画像一覧

S M T W T F S
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31