看板 C_Sharp 關於我們 聯絡資訊
http://ppt.cc/pJAr 這是我能想到在C#底下最快速的方式了,直接對著Boolean陣列的記憶體寫入Byte值,少 了Boxing跟Unboxing,也不需要判斷式,所以速度非常快。值得注意的是,如果你的 Output陣列太大了,那CLR好像並不是把它放在連貫的記憶體上,而是會分段。所以 你一次寫太大量進去,就會沒有效果。 說實在直接寫記憶體,真的有夠快... -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 122.116.97.107
stu87616:感謝解答,方法是瞭解了,但程式碼還需要慢慢研究QQ... 12/01 01:17
s3748679:System.Runtime.InteropServices.Marshal有提供Unmanaged 12/01 02:03
s3748679:相關功能可以用~~~ 12/01 02:03
erspicu:很好奇原PO的資料量是有多大 需要多少時間去處理 12/01 09:14
erspicu:小資料的話 在這種節骨眼上琢磨 有點鑽牛角尖 12/01 09:15
erspicu:倒不如從資料來源的格式輸出處理 12/01 09:16
因為原PO表示轉換很慢,所以我就找看看最快的方法,畢竟原PO的主旨就是 "有沒有更好的方法"。 ※ 編輯: optimist9266 來自: 122.116.97.107 (12/01 13:24)
stu87616:嗯..因為資料來源不是我負責的,我也只是先做我這部分 12/01 21:39
stu87616:就先自己用筆記本做一些簡單的東西來測試輸入 12/01 21:40