C# と VB.NET の質問掲示板

わんくま同盟

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト


■88239 / )  VBScriptのオブジェクトへのアクセスが遅くなった?
□投稿者/ おろちまる (1回)-(2018/08/11(Sat) 18:01:29)

分類:[VBScript] 

VBScriptで書いたプログラムが遅い気がしまして調査しています。

プログラムの動作が遅くて調査しましたところ
オブジェクトのメソッドを呼ぶのが遅いようでした。

そこでオブジェクトのメソッドを呼ぶ時間とグローバルなメソッドを呼ぶ時間を比較してみました。
オブジェクトのメソッドの呼び出しはグローバルなメソッドの呼び出しの2200倍時間がかかりました。

昔動かした時はもっと速かったような気がするのですが、記憶に
残っておらず記録も残していなかったのでわかりません。

昔からこれくらい差があるものでしたでしょうか?
みなさんの環境ではどんなものでしょうか?

実行結果だけでも教えていただけると助かります。

プログラムをfileName.vbsという名前で保存して
コマンドプロンプトからcscript fileName.vbsで実行できます。

以上、よろしくお願いいたします。

[試した環境]

OS 名: Microsoft Windows 10 Home
OS バージョン: 10.0.17134 N/A ビルド 17134

[試したプログラム]

Option Explicit

Main

Sub Main()
	Dim o, t, i
	Const c = 65536

	Set o = New Obj
	
	t = Timer()
	For i = 1 To c
		o.Method
	Next
	t = Timer() - t
	WScript.StdOut.WriteLine "Object: " & FormatNumber(t, 1)

	t = Timer()
	For i = 1 To c
		Method
	Next
	t = Timer() - t
	WScript.StdOut.WriteLine "Global: " & FormatNumber(t, 1)
End Sub

Sub Method()
End Sub

Class Obj
	Sub Method()
	End Sub
End Class


[試した結果]

Object: 28.6
Global: 0.0

返信 編集キー/


管理者用

- Child Tree -