메모리 관리 함수

이 문서에서는 동시성 런타임이 동시 방식으로 메모리를 할당하고 해제하는 데 도움이 되는 메모리 관리 함수에 대해 설명합니다.

동시성 런타임은 기본 스케줄러를 제공하므로 애플리케이션에서 스케줄러를 만들 필요가 없습니다. 작업 스케줄러는 애플리케이션의 성능을 미세 조정하는 데 도움이 되므로 동시성 런타임을 접하는 경우 PPL(병렬 패턴 라이브러리) 또는 비동기 에이전트 라이브러리로 시작하는 것이 좋습니다.

동시성 런타임은 동시에 메모리 블록을 할당하고 해제하는 데 최적화된 두 가지 메모리 관리 함수를 제공합니다. 동시성::Alloc 함수는 지정된 크기를 사용하여 메모리 블록을 할당합니다. 동시성::Free 함수는 에 의해 Alloc할당된 메모리를 해제합니다.

참고 항목

Alloc 함수와 Free 함수는 서로 의존합니다. 함수를 Free 사용하여 할당한 메모리를 해제하는 데만 함수를 Alloc 사용합니다. 또한 함수를 Alloc 사용하여 메모리를 할당하는 경우 함수만 Free 사용하여 해당 메모리를 해제합니다.

AllocFree 다른 스레드 또는 태스크에서 고정된 할당 크기 집합을 할당하고 해제할 때 및 함수를 사용합니다. 동시성 런타임은 C 런타임 힙에서 할당하는 메모리를 캐시합니다. 동시성 런타임은 실행 중인 각 스레드에 대해 별도의 메모리 캐시를 보유합니다. 따라서 런타임은 잠금 또는 메모리 장벽을 사용하지 않고 메모리를 관리합니다. 애플리케이션은 메모리 캐시에 Alloc 더 자주 액세스할 때 더 많은 이점을 얻을 수 있습니다 Free . 예를 들어 두 스레드를 자주 호출하고 Free 주로 호출 AllocAlloc 하거나 Free호출하는 스레드보다 더 많은 이점을 제공하는 스레드입니다.

참고 항목

이러한 메모리 관리 함수를 사용하고 애플리케이션에서 많은 메모리를 사용하는 경우 애플리케이션은 예상보다 빨리 메모리 부족 상태로 진입할 수 있습니다. 한 스레드에 의해 캐시된 메모리 블록은 다른 스레드에서 사용할 수 없으므로 한 스레드에 많은 메모리가 있는 경우 해당 메모리를 사용할 수 없습니다.

예시

메모리 성능을 향상시키기 위해 함수 및 Free 함수를 사용하는 Alloc 예제는 방법: Alloc 및 Free를 사용하여 메모리 성능 향상을 참조하세요.

참고 항목

작업 Scheduler
방법: Alloc 및 Free를 사용하여 메모리 성능 개선