デュアルスレッドアロケーターは、動的ヒープ アロケーターと バケット アロケーターを組み合わせるラッパーです。具体的には、以下を組み合わせます。
2 つの動的ヒープアロケーターのブロックサイズをカスタマイズできます。
使用状況レポートには、アロケーターの 3 つの部分のすべてに関する情報が含まれます。 例:
[ALLOC_DEFAULT] Dual Thread Allocator
Peak main deferred allocation count 135
[ALLOC_BUCKET]
Large Block size 4.0 MB
Used Block count 1
Peak Allocated bytes 3.3 MB
[ALLOC_DEFAULT_MAIN]
Peak usage frame count: [16.0 MB-32.0 MB]: 8283 frames, [32.0 MB-64.0 MB]: 1 frames
Requested Block Size 16.0 MB
Peak Block count 2
Peak Allocated memory 53.3 MB
Peak Large allocation bytes 40.2 MB
[ALLOC_DEFAULT_THREAD]
Peak usage frame count: [64.0 MB-128.0 MB]: 8284 frames
Requested Block Size 16.0 MB
Peak Block count 2
Peak Allocated memory 78.3 MB
Peak Large allocation bytes 47.3 MB
ノート: Peak main deferred allocation count は、削除キュー内のアイテム数です。メインスレッドは、自己によるアロケーションを削除する必要があります。別のスレッドがアロケーションを削除すると、そのアロケーションはキューに追加されます。アロケーションは、メインスレッドが削除するまでキュー内で待機します。その後、ディファードアロケーションとしてカウントされます。