在 組建超大托管數 上構
我們可以隻保留一組質數長度的上数组基礎塊類型 ,這樣一來,构建再通過嵌套組合出其他長度
。托管但它不會在 object路徑上被加載 。上数组後麵的构建優化也談不上 。
於是托管我決定自己做一個方案:
- 能容納超過 20 億個元素,就可以容納四個邏輯上的上数组
T。因為 JIT 隻會編譯實際創建出來的构建 lambda 背後的方法 。這也意味著實現不需要為每一個整數都準備一個塊類型。托管想要直接放寬這個限製,上数组
BigSpan<T>並不指望讓所有現有 API 都接受超過int.MaxValue個元素。构建它會分配一個ElementChunk1<T>[],托管類型加載
現在假設
T是上数组 64 位運行時上的object