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

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

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

関数呼び出しに時間がかかる

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■87273 / inTopicNo.1)  関数呼び出しに時間がかかる
  
□投稿者/ kumiko (1回)-(2018/05/02(Wed) 18:57:22)

分類:[VB.NET/VB2005 以降] 

VB.NETに関してご質問があります。
下記ソースで、OKボタをクリックしたときにcmdOK_Click()関数が実行されます。
TimeLogは現在時刻をログに出力する関数です。

cmdOK_Click()内でTest()関数をコールしていますが、(1)と(2)の時間差が約3〜4秒となります。

しかし、Test()関数内の「Dim rs As ADODB.Recordset = Nothing」を削除すると、(1)と(2)の時間差はほぼなくなります。
「Dim rs As ADODB.Recordset = Nothing」が関数内に記載されているだけで、時間が3,4秒もかかってしまいます。

時間がかかるのは最初の1回のみで、2回目以降は早いです。

現在、あるシステムのサーバ更改を行っており、現行はWin2008、次期は2012R2です。
時間が3,4秒もかるのは次期のみで、現行では(1)から(2)まで1秒もかかりません。
なぜ次期だけ時間がかかるのでしょうか?
対応策は何かないでしょうか?
(サーバ更改のみを行っており、可能ならばプログラムの修正は行いたくないです。)

<ソース例>
'OKボタンクリック時のイベント
Private Sub cmdOK_Click(省略)
 clsCommon.TimeLog("cmdOK_Click Start") '(1)現在時刻をログに出力
 Test()
End Sub

Private Sub Test()
 clsCommon.TimeLog("Test Strat") '(2)現在時刻をログに出力
 Dim rs As ADODB.Recordset = Nothing
End Sub

引用返信 編集キー/
■87275 / inTopicNo.2)  Re[1]: 関数呼び出しに時間がかかる
□投稿者/ PANG2 (212回)-(2018/05/02(Wed) 22:47:43)
.NETで開発したアプリが、Win2008は32bitで、Win2012R2は64bitで動いているとか。
ADODBの64bit版は、色々問題がありそうなので、アプリをANYCPUではなく32bitでコンパイルするのが定石です。


引用返信 編集キー/
■87276 / inTopicNo.3)  Re[1]: 関数呼び出しに時間がかかる
□投稿者/ Jitta (372回)-(2018/05/03(Thu) 10:34:48)
No87273 (kumiko さん) に返信

> 現在、あるシステムのサーバ更改を行っており、現行はWin2008、次期は2012R2です。

 メインストリーム終わって、5年の延長サポート。5年限定ってことは決定事項ですかね?


引用返信 編集キー/

このトピックをツリーで一括表示


トピック内ページ移動 / << 0 >>

このトピックに書きこむ