> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# ApuCreateHeap

> ApuCreateHeap

# ApuCreateHeap

APU ヒープを作成します。

## 構文

```cpp theme={null}
HRESULT ApuCreateHeap(  
         UINT32 cachedSizeInBytes,  
         UINT32 nonCachedSizeInBytes = 0  
)  
```

### パラメーター

*cachedSizeInBytes*   \_In\_\
型: UINT32

キャッシュされたメモリ割り当てのサイズ (バイト単位)。

*nonCachedSizeInBytes*   \_In\_opt\_\
型: UINT32

非キャッシュ割り当てのサイズ (バイト単位)。0 の場合は、既定の割り当て (約 1 MB) を使用します。

### 戻り値

型: HRESULT

このメソッドは、他のエラー コードに加えて次の値を返す可能性があります。

| 戻り値コード                           | 説明                |
| :------------------------------- | :---------------- |
| S\_OK                            | 成功                |
| E\_INVALIDARG                    | 無効な引数 (size == 0) |
| E\_OUTOFMEMORY                   | メモリ割り当ての失敗        |
| APU\_E\_HEAP\_ALREADY\_ALLOCATED | ヒープは既に割り当てられています  |

## 解説

APU ヒープは 1 つしか作成できず、プロセスの有効期間中は保持されます。ヒープが解放されるのは、プロセスが終了したときのみです。

必要な要件どおりにヒープが割り当てられるようにするには、他の ACP HAL および APU メソッドの前にこのメソッドを呼び出します。

このメソッドの前に [ACP HAL](/reference/audio/acphal/acphal_members) (AcpHal.h) または [APU](/reference/audio/apu/apu_members) のメソッドが呼び出された場合、64 MB のキャッシュ ヒープと約 1 MB の非キャッシュ ヒープが割り当てられます。その後にこのメソッドを呼び出すと、`APU_E_HEAP_ALREADY_ALLOCATED` で失敗します。

キャッシュ メモリは、すべての Waves アセットとコマンド/メッセージ キューに使用されます。非キャッシュ メモリは、SHAPE コンテキストと通知に使用されます。

## 要件

**ヘッダー:** apu.h

**ライブラリ:** acphal.lib

**サポート対象プラットフォーム:** XBOX One ファミリー本体、XBOX Series 本体

## 概念ドキュメント

* [ACP の概要](/build/console-features/audio/overviews/acp-overview)

## 関連項目

[APU](/reference/audio/apu/apu_members)


## Related topics

- [ApuHeapState](/ja-jp/reference/audio/apu/structs/apuheapstate.md)
- [ApuHeapGetState](/ja-jp/reference/audio/apu/functions/apuheapgetstate.md)
- [APU (Audio Processing Unit)](/ja-jp/reference/audio/apu/apu_members.md)
- [ACP の概要](/ja-jp/build/console-features/audio/overviews/acp-overview.md)
- [CreateHeap](/ja-jp/reference/graphics/d3d12/interfaces/id3d12device/methods/id3d12device_createheap_public.md)
