Skip to content

效能與記憶體影響

概述

Stack Size Adjuster 專為極致效能打造,保證零記憶體額外開銷與零 NBT 膨脹。


⚡ 核心效能最佳化設計

  1. 原生型別值儲存:當前生效上限儲存在 StackSizeManagervolatile int 原生欄位中,確保堆疊上限計算期間享有 $O(1)$ 的無鎖瞬時讀取存取。
  2. 零 NBT 膨脹:不同於注入自訂 NBT 標籤追蹤堆疊的傳統模組,Stack Size Adjuster 直接掛鉤原版組件資料(DataComponents.MAX_STACK_SIZE)與 ExtraCodecs.intRange(1, Integer.MAX_VALUE)。儲存的存檔容量與原版 100% 一致。
  3. 無每刻監聽器:本模組在遊戲刻迴圈(EndTickWorldTick)中不執行任何邏輯。僅在物品堆疊查詢、指令調用或破壞容器時按需執行程式碼。
  4. 高效執行緒安全覆蓋:外部附屬覆蓋規則維護在 CopyOnWriteArrayList<BiFunction<Item, Integer, Integer>> 中,提供執行緒安全的無鎖迭代。

📊 記憶體與 CPU 佔用基準測試

指標維度實測影響最佳化技術原理
堆疊記憶體配置$< 50\text{ KB}$堆疊檢查期間零暫存物件建立
世界存檔資料膨脹$+0\text{ 位元組}$原生組件 Codec 調整,無附加標籤
伺服端刻耗時 (MSPT)$0.00\text{ ms}$無鎖原生讀取;零每刻迴圈消耗
破壞容器瞬時 MSPT$< 0.50\text{ ms}$InventoryDropHelper 實體生成上限截流

Official documentation & web portal for Dasik Igaijinn mods.