全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:864
推到 Plurk!
推到 Facebook!

問關於資料庫的關閉

尚未結案
hotswin
中階會員


發表:72
回覆:92
積分:52
註冊:2003-11-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-04-11 10:50:12 IP:220.134.xxx.xxx 未訂閱
請教大家: 我的程式執行時間愈久,當我要結束時就花愈久的時間,才能結束它。 (好幾分鍾的) 我使用 ADO Ms-Access ,執行前壓縮檔案約 0.6 mb 執行後約1.5 mb 不知道跟什麼有關係呢 ? 有什麼方法可提升快速結束程式的時間呢
------
xinjier禮品贈品
supman
尊榮會員


發表:29
回覆:770
積分:924
註冊:2002-04-22

發送簡訊給我
#2 引用回覆 回覆 發表時間:2005-04-11 12:22:14 IP:61.70.xxx.xxx 未訂閱
您好: 會不會您的程式中有配置記憶體,但卻沒適時的釋放他,而造成關閉時才由系統去釋放,而造成時間拉長呢? 不過我的系統佔了20MB也並不會關閉那麼長的時間,僅提供這樣思路您參考一下.
hotswin
中階會員


發表:72
回覆:92
積分:52
註冊:2003-11-06

發送簡訊給我
#3 引用回覆 回覆 發表時間:2005-04-11 15:16:53 IP:220.134.xxx.xxx 未訂閱
你好: 我的程式沒有使用記憶体的配置,大都是資料庫的查詢與存取 我宣告ADOquery為全 域的變數,另外,是不是每次執行SQL之後 要做dt.close ,dt.free 或是 ADOConnection的close 呢? 不知跟這點有關係呢??謝謝
------
xinjier禮品贈品
P.D.
版主


發表:603
回覆:4038
積分:3874
註冊:2006-10-31

發送簡訊給我
#4 引用回覆 回覆 發表時間:2005-04-11 16:39:38 IP:61.71.xxx.xxx 未訂閱
引言: 請教大家: 我的程式執行時間愈久,當我要結束時就花愈久的時間,才能結束它。 (好幾分鍾的) 我使用 ADO Ms-Access ,執行前壓縮檔案約 0.6 mb 執行後約1.5 mb 不知道跟什麼有關係呢 ? 有什麼方法可提升快速結束程式的時間呢
你沒有提到幾個重點 1.執行時間越久, 所謂的執行是做了那些事, 還是Idle(間置)時間越久 2.執行前壓縮檔案與執行後.., 正常來說, 你提到資料多是做讀取, 存取行為, 是不會有什麼壓縮產生, 那所謂的壓縮, 你是做了什麼事! 3.透過ADO建立連結再關閉不致於有你說的情況, 不妨將你的程式先簡單化, 例如只做讀取, 或只先做連結, 然後按你的狀況時間久一點後關閉, 看是否會造成延遲, 如果不會再一項一項把程式碼給還原, 一定會碰到你的情況, 那不就可以知道是那一段出問題了, 再把這個程式PO上來討論, 或許會好一點!
hotswin
中階會員


發表:72
回覆:92
積分:52
註冊:2003-11-06

發送簡訊給我
#5 引用回覆 回覆 發表時間:2005-04-11 17:50:24 IP:220.134.xxx.xxx 未訂閱
你沒有提到幾個重點 1.執行時間越久, 所謂的執行是做了那些事, 還是Idle(間置)時間越久 2.執行前壓縮檔案與執行後.., 正常來說, 你提到資料多是做讀取, 存取行為, 是不會有什麼壓縮產生, 那所謂的壓縮, 你是做了什麼事! 3.透過ADO建立連結再關閉不致於有你說的情況, 不妨將你的程式先簡單化, 例如只做讀取, 或只先做連結, 然後按你的狀況時間久一點後關閉, 看是否會造成延遲, 如果不會再一項一項把程式碼給還原, 一定會碰到你的情況, 那不就可以知道是那一段出問題了, 再把這個程式PO上來討論, 或許會好一點! [/quote] 我的程式是用來紀錄線上遊戲的資料,是針對網路封包來處理,不是外掛,可 說是內掛的程式。 1.我的時間愈久是指,不斷的記錄遊戲中怪物掉下的物品到資料表中,並查詢 相關的品名。所以不是閒置的。 2.因為ms-Access資料庫不斷的變大(超誇張的),所以我採取程式執行前先給他壓縮,使用 JRO_TLB(這裏查到的方法),結果是有改善一點點。 3.因為執行時間久了,系統就會出現你的虛擬記憶体不足,所以我須要手動去 關畢程式再重新執行。就不方便了。 [code〕 procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin //關閉網~路連線 // tcp1.Close ; TcpChat.Close ; dt.Close ; dtS.Close ; DataMod.ADOConnection1.Close ; DataMod.ADOConnection2.Close ; DataMod.ADOConnection3.Close ; dt.Free ; dtS.Free ; DataMod.ADOConnection1.Free ; DataMod.ADOConnection2.Free ; DataMod.ADOConnection3.Free ; // Application.Terminate ; end; [/code]
------
xinjier禮品贈品
系統時間:2024-06-25 15:03:13
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!