


請教一下,主程式關閉的時候出現這個提示是什么原因?我用的xe10,所有的程式閉關除錯的時候都是這樣的
uj5u.com熱心網友回復:
---------------------------Unexpected Memory Leak
---------------------------
An unexpected memory leak has occurred. The unexpected small block leaks are:
1 - 12 bytes: TCustomClientDataSet.TPersistDataPacket x 8, TJSONDB x 16, TIniFile x 1, Unknown x 18
13 - 20 bytes: TFieldOptions x 8, TBits x 7, UnicodeString x 48, Unknown x 17
21 - 28 bytes: UnicodeString x 102, Unknown x 87
29 - 36 bytes: TAggregates x 8, TCheckConstraints x 8, TParams x 8, UnicodeString x 48, Unknown x 7
37 - 44 bytes: TFields x 16, TFieldDef x 69, UnicodeString x 10, Unknown x 16
45 - 52 bytes: TList<Data.DB.TField> x 24, TList<Data.DB.TDataSource> x 8, TDictionary<System.string,Data.DB.TField> x 16, TList<System.Classes.TCollectionItem> x 39, TList<System.Classes.TComponent> x 7, Unknown x 2
53 - 60 bytes: TIndexDefs x 7, TMasterDataLink x 8, TObjectList<System.Classes.TList> x 8, Unknown x 14
61 - 68 bytes: TFieldDefs x 8, Unknown x 7
77 - 84 bytes: Unknown x 1
85 - 92 bytes: TStringList x 8
93 - 100 bytes: TFieldList x 8, TFieldDefList x 8
101 - 108 bytes: Unknown x 1
117 - 124 bytes: Unknown x 10
125 - 132 bytes: Unknown x 5
133 - 140 bytes: Unknown x 1
149 - 156 bytes: Unknown x 20
173 - 188 bytes: UnicodeString x 1
189 - 204 bytes: Unknown x 8
205 - 220 bytes: Unknown x 1
237 - 252 bytes: Unknown x 5
253 - 268 bytes: TStringField x 68, Unknown x 1
269 - 284 bytes: TFloatField x 1, Unknown x 3
285 - 300 bytes: Unknown x 7
301 - 316 bytes: Unknown x 9
317 - 348 bytes: Unknown x 8
381 - 412 bytes: Unknown x 8
413 - 444 bytes: Unknown x 5
477 - 524 bytes: Unknown x 1
525 - 572 bytes: Unknown x 5
573 - 620 bytes: Unknown x 4
621 - 668 bytes: Unknown x 1
733 - 796 bytes: Unknown x 3
797 - 876 bytes: TClientDataSet x 8, Unknown x 3
877 - 956 bytes: Unknown x 1
957 - 1052 bytes: Unknown x 3
1373 - 1500 bytes: Unknown x 1
1645 - 1804 bytes: Unknown x 1
1805 - 1980 bytes: Unknown x 3
1981 - 2172 bytes: Unknown x 7
2173 - 2380 bytes: Unknown x 2
The sizes of unexpected leaked medium and large blocks are: 26156, 26156, 26156, 26156, 26156, 26156, 26156, 26156, 26156, 50220, 8236, 50220, 250156, 250156, 250156, 250156, 250156, 50220, 8236, 250156, 250156, 250156, 250156, 250156, 50220, 50220, 50220, 50220, 250156, 250156, 22060, 22060, 22060, 22060, 22060, 22060, 22060, 22060, 8236, 4140, 4140, 4140, 4140, 4140, 4140, 4140, 50220, 50220, 8236, 250156, 8236, 4140, 250156, 250156, 250156, 250156, 250156, 250156, 6188, 6188, 6188, 6188, 6188, 250156, 4140, 4140, 4140, 4140, 4140, 4140, 4140, 4140, 8236, 8236, 14124, 8236, 8236, 14124, 14124, 14124, 14124, 14124, 14124, 14124, 14124, 250156, 50220, 50220, 50220, 22060, 8236, 4140, 250156, 250156, 250156, 250156, 50220, 8236, 8236, 60204, 60204, 60204, 60204, 6188, 6188, 6188, 60204, 60204, 60204, 60204, 8236, 8236, 60204, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 50220, 4140, 50220, 50220, 50220, 6188
---------------------------
確定
---------------------------
uj5u.com熱心網友回復:
記憶體泄漏,具體跟一下,看看到哪段代碼出錯,再分析吧。uj5u.com熱心網友回復:
記憶體讀取出錯。只有一步一步地跟蹤,查找錯誤點了。uj5u.com熱心網友回復:
讀取access 資料庫地址出問題了.uj5u.com熱心網友回復:
記憶體泄漏,發生在關閉程式時,應該是釋放資源時釋放了沒有申請到的資源。建議:
1、注釋掉釋放資源的代碼試試。
2、動態資源初始時賦值nil,申請資源失敗或者釋放資源時,也要賦值nil。關閉程式時釋放非nil的資源。
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/14344.html
標籤:VCL組件開發及應用
上一篇:用SQL實作階乘
下一篇:這幾個sql陳述句怎么寫。
