2
我測試了一些數據庫組件,如SDAC
和別人,我發現了一些有趣的事情:AdoQuery如何處理斑點?
當我執行一個查詢與TADOQuery
和這個查詢有很多BLOB字段的,我得到的所有行(fetchall
)內存我的應用程序接近1.8GB,一切正常。
使用其他組件時,在同一數據庫上執行的相同查詢將拋出Out of Memory
異常,因爲它超過了1.8GB的內存使用量。
我知道我不應該返回所有這些行,我應該使用分頁和blablabla。但我很好奇ADO如何管理所有行和其他組件不能。
我認爲ADO正在壓縮內存中的斑點,但這只是一個猜測。
有沒有人知道爲什麼ADO中的內存使用如此之好?
對不起,但那不能回答我的問題。我非常瞭解你的組件,特別是sdac,但我對TADOQuery如何在內部工作感興趣。 – 2012-01-17 18:28:07