max_fixed_size 클래스
freelist 개체를 고정된 최대 길이로 제한하는 max 클래스 개체에 대해 설명합니다.
구문
template <std::size_t Max>
class max_fixed_size
매개 변수
Max
freelist
에 저장할 요소의 최대 수를 결정하는 max 클래스입니다.
생성자
생성자 | Description |
---|---|
max_fixed_size | max_fixed_size 형식의 개체를 생성합니다. |
멤버 함수
멤버 함수 | 설명 |
---|---|
allocated | 할당된 메모리 블록의 수를 늘립니다. |
deallocated | 할당된 메모리 블록의 수를 줄입니다. |
full | 사용 가능한 목록에 더 많은 메모리 블록을 추가할지 여부를 지정하는 값을 반환합니다. |
released | 사용 가능한 목록에서 메모리 블록의 수를 줄입니다. |
saved | 사용 가능한 목록에서 메모리 블록의 수를 늘립니다. |
요구 사항
헤더:<할당자>
네임스페이스: stdext
max_fixed_size::allocated
할당된 메모리 블록의 수를 늘립니다.
void allocated(std::size_t _Nx = 1);
매개 변수
_Nx
증분 값입니다.
설명
멤버 함수는 아무 작업도 수행하지 않습니다. 이 멤버 함수는 cache_freelist::allocate
에서 new
연산자를 성공적으로 호출할 때마다 호출됩니다. _Nx 인수는 연산new
자가 할당한 청크의 메모리 블록 수입니다.
max_fixed_size::d 할당됨
할당된 메모리 블록의 수를 줄입니다.
void deallocated(std::size_t _Nx = 1);
매개 변수
_Nx
증분 값입니다.
설명
멤버 함수는 아무 작업도 수행하지 않습니다. 이 멤버 함수는 cache_freelist::deallocate
에서 delete
연산자를 호출할 때마다 호출됩니다. _Nx 인수는 연산delete
자가 할당 취소한 청크의 메모리 블록 수입니다.
max_fixed_size::full
사용 가능한 목록에 더 많은 메모리 블록을 추가할지 여부를 지정하는 값을 반환합니다.
bool full();
Return Value
Max <= _Nblocks
이면 true
이고, 그렇지 않으면 false
입니다.
설명
이 멤버 함수는 cache_freelist::deallocate
에서 호출됩니다. 호출에서 true
를 반환하는 경우 deallocate
는 메모리 블록을 사용 가능한 목록에 넣고, false를 반환하는 경우 deallocate
는 delete
연산자를 호출하여 블록을 할당 취소합니다.
max_fixed_size::max_fixed_size
max_fixed_size
형식의 개체를 생성합니다.
max_fixed_size();
설명
이 생성자는 저장된 값 _Nblocks
를 0으로 초기화합니다.
max_fixed_size::released
사용 가능한 목록에서 메모리 블록의 수를 줄입니다.
void released();
설명
저장된 값 _Nblocks
를 줄입니다. 현재 max 클래스의 released
멤버 함수는 사용 가능한 목록에서 메모리 블록을 제거할 때마다 cache_freelist::allocate
에서 호출됩니다.
max_fixed_size::saved
사용 가능한 목록에서 메모리 블록의 수를 늘립니다.
void saved();
설명
이 멤버 함수는 저장된 값 _Nblocks
를 늘립니다. 이 멤버 함수는 사용 가능한 목록에 메모리 블록을 넣을 때마다 cache_freelist::deallocate
에서 호출됩니다.