目前,我正在讀一本書的網站編程和作家有用提到他將編寫DLL對象使用延遲加載模式。我認爲在概念上我有點理解懶加載模式,但我不知道,如果我理解它在作者實現它的方式的有用性
順便說一句 - 這裏我一般不要求延遲加載模式的用處,但無論是在方式有用這個特定書實現它:
1)反正,創建DLL對象時,一個DB查詢經由DAL),其從各列,並與檢索數據執行(它填充我們的DLL對象的屬性。由於其中一個字段(稱爲「L」)可能包含相當多的文本,因此作者決定僅在該屬性第一次被讀取時才檢索該字段。
A)在我們的情況下,究竟爲什麼我們通過應用延遲加載模式獲得什麼?內存使用量更少?
B)但是,在另一方面,不作者的方式實現延遲加載模式引起CPU做更多的工作,因此更長的時間才能完成,因爲如果L被從其他字段分別檢索,那麼這將需要我們的應用程序額外調用Sql Server以檢索「L」,而沒有延遲加載模式,則只需要對Sql Server進行一次調用,因爲我們將一次獲得所有字段?!
順便說一句 - 我知道延遲加載模式可以是在其中檢索數據的特定部分將需要繁重的計算的情況下非常有利的,但是這不是在上面的例子
感謝名單
的情況下
那麼在我的特殊情況下,延遲加載模式只能爲我節省一些內存? – SourceC 2009-07-18 21:26:07