国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > 綜合 > 正文

低效的selectSingleNode和高效的ListView數據添加

2024-07-21 02:24:26
字體:
來源:轉載
供稿:網友

最大的網站源碼資源下載站,

以下是santomania帶給我們的一些提高代碼性能的建議,在他的博客網站上,你能看到不少他關于sharepoint的見解。

一、低效的selectsinglenode

我最近一直在使用reflecting,然而我確實已經通過lamont harrington對此做了提示,雖然對我來說這并不是一個新聞(一般說來,在木桶中,我不會是最慢的魚^_^),但我發現它仍然值得一提。

反編譯xmlnode.selectsinglenode方法,你將獲得如下結果(原諒我的vb.net):

public overloads function selectsinglenode(byval xpath as string) as xmlnode

begin function

dim list1 as xmlnodelist
dim node1 as xmlnode
try

list1 = me.selectnodes(xpath)
node1 = list1.itemof(0)

catch argumentoutofrangeexception

node1 = nothing

end try
return node1

end function

你將會看到,selectsinglenode僅僅是selectnodes的包裝,這意味著它(最快)不會比selectnode更快,并且,如果你在深入研究一點,selectnodes反編譯后如下:

public overloads function selectnodes(byval xpath as string) as xmlnodelist
begin function

im navigator1 as xpathnavigator
navigator1 = me.createnavigator
return new xpathnodelist(navigator1.select(xpath))

end function

讓人感到沮喪痛苦的是:selectnodes確實是創造了一個xpathnavigator實例!!

我想,首選的解決方案是:實例化我們自己的xpathnavigator并且在對xml文檔執行xpath查詢的時候重復使用它,特別是我們執行嵌套循環的查詢時。

二、高效的listview數據添加

怎樣促進你的listview的性能?不要使用在同一個的循環中去創造和添加listviewitem的方法。更好的方法是:創造一個listviewitem的集合,并且使用addrange方法去添加它們。我顯示這個方法對團隊中的一個開發者,在大量目錄添加的情況下(超過1500條記錄),他的listview的性能比原來要高效1000倍。



最后,不知你注意到了沒有,dictionaryentry不是一個類,而是一個結構。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 甘泉县| 新宁县| 横峰县| 怀化市| 手机| 汶上县| 乐至县| 屏山县| 邯郸市| 延吉市| 英德市| 农安县| 南皮县| 苏尼特左旗| 津市市| 黄梅县| 伊金霍洛旗| 石棉县| 陵水| 义马市| 兴海县| 芜湖市| 南澳县| 吴忠市| 民和| 大港区| 天津市| 定襄县| 乡宁县| 龙陵县| 水富县| 沾化县| 泗洪县| 鸡东县| 赞皇县| 沐川县| 大余县| 五常市| 潢川县| 珠海市| 新竹市|