一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

ASP.NET(C#) String, StringBuilder 與 StringWriter性能比較

直觀認識:正面交鋒 
性能測試1:StringBuilder 
第 1 輪測試:用時 312.5 毫秒 
第 2 輪測試:用時 421.875 毫秒 
第 3 輪測試:用時 453.125 毫秒 
第 4 輪測試:用時 421.875 毫秒 
第 5 輪測試:用時 453.125 毫秒 
性能測試2:StringWriter 
第 1 輪測試:用時 406.25 毫秒 
第 2 輪測試:用時 453.125 毫秒 
第 3 輪測試:用時 421.875 毫秒 
第 4 輪測試:用時 437.5 毫秒 
第 5 輪測試:用時 437.5 毫秒 
性能測試3:String(1/100 數據量) 
第 1 輪測試:用時 12406.25 毫秒 

您注意到了嗎? 
       String 連接方式在只有 1/100 數據的測試下,使用時間30倍于 StringBuilder。因此,基于性能的考量,我們絕不推薦這種方式。而 StringBuilder 較之 StringWriter 略勝一籌,具體的原因將在下文中分析。當然,測試存在誤差,但足以說明事實。 

StringWriter 與 StringBuilder:誰是強者 
        StringWriter 位于 System.IO 命名空間內,繼承于 TextWriter。在 .NET Reflector 的反編譯結果中顯示,它的內部事實上是采用 StringBuilder 進行連接。無怪乎 StringWriter 會略遜一籌,它原來僅僅是 StringBuilder 的一個適配(可以稱之為 Adapter 模式)。為什么 StringBuilder 擁有如此的效率? 

您注意到了嗎? 
在許多地方,需要 StringWriter 而不是 StringBuilder,例如 XmlTextWriter。 

StringBuilder:原因何在 
       關于 System.Text.StringBuilder 的研究,網上已有不少,其主要原理便是預先以非托管方式分配內存,保證文本的修改與擴張,不重新創建一個 String 對象。而 String 對象的創建,便是性能瓶頸所在。它的連接效率遠超過 String,不過在少量的文本連接時,顯然 String 編程時更方便些。 

AspNet技術ASP.NET(C#) String, StringBuilder 與 StringWriter性能比較,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 四虎在线永久视频观看 | 成人福利网站 | 午夜视频在线观看网站 | 亚洲综人网 | 岬奈一区二区中文字幕 | 四虎国产精品免费久久久 | 国产精品欧美亚洲韩国日本不卡 | 午夜在线免费观看视频 | 欧美亚洲国产精品第一页 | 99精品伊人久久久大香线蕉 | 亚洲视频一区在线观看 | 色综合老色鬼狼天天 | 亚洲激情99| 久久视热这只是精品222 | 免费观看国产精品 | 精品视频一区二区三三区四区 | 激情综合婷婷丁香六月花 | 欧美黄色片在线 | 伊人久久影院大香线蕉 | 天天摸天天看天天爽 | 日本熟hd| 国产丝袜美腿高跟白浆 | 国产一区在线观看视频 | 99精品视频在线观看免费播放 | 午夜免费视频观看 | 精品国产不卡一区二区三区 | 中文激情 | 午夜国产在线观看 | 1区2区3区4区产品乱码入口 | 色cccwww | 中文字幕日韩专区精品系列 | 黄色网战在线观看 | 一本色道久久鬼综合88 | 国产成人精品久久亚洲高清不卡 | 麻豆一区区三三四区产品麻豆 | 国产精品短视频 | 国产一区二区三区在线视频 | 成人精品视频网站 | 主播avove| 欧美zoosex| 国产成人91高清精品免费 |