2013-03-24 43 views
1

我有我的應用程序列表視圖,顯示交通事件,此列表視圖應每隔一秒更新,跟進事件。 我簡單地做到這一點通過聲明一個引黃對象,的DataReader ...然後填充列表視圖的定時器(1000間隔),最後,我處置連接和另一個對象(這是每個一個計時器滴答)。有沒有比這種方式更好的方式來從DataBase每1秒更新一次listview?

現在,有沒有更好的方式來做到這一點?也許更好的表現,記憶或其他東西?

我'不是專家,所以我鑫卡特也許是許多聲明每隔conncetions第二日做一些內存的問題:)(糾正我,如果這是錯誤的)

數據庫訪問2007 VS 2012

謝謝。

回答

1

假設你正在使用ADO.NET來訪問你的數據庫,你的訪問模式應該是罰款,因爲.NET使用connection pooling,以儘量減少關閉和重新開放數據庫連接的性能影響。

你的整體結構可以然而質疑:輪詢一個計時器更新通常不是最好的選擇。更好的方法是在一個單獨的表中維護更新序列。該表將具有單行,最初將單個int列設置爲零。每次對「真實」數據進行更新時,這個數字都會增加一個。使用此表後,您的程序可以每秒讀取一個數字,而不是重新讀取整個數據集。如果程序檢測到該數字與前一次相同,則停止並等待下一個定時器間隔;否則,它會重新讀取數據集。

+0

非常感謝你:) – 2013-03-24 11:34:47

相關問題