네트워크 스트림 끝포인트 버퍼에 메모리 할당
- 업데이트 날짜:2025-08-27
- 2분 (읽기 시간)
네트워크 스트림 끝포인트는 FIFO 버퍼를 사용해서 데이터를 전송합니다. [네트워크 스트림 발신자 끝포인트 생성] 및 [네트워크 스트림 수신자 끝포인트 생성] 함수의 데이터 타입 및 버퍼 크기 입력이 버퍼가 메모리를 얼마나 필요로하는지 결정합니다. 이러한 함수의 원소 할당 모드 입력은 초기 버퍼 메모리를 스칼라 타입이 아닌 데이터 타입에 할당할 시점을 결정합니다.
할당 모드와 관계없이, 사용자 어플리케이션이 사용하는 메모리 양에 영향을 미치는 것은 버퍼 크기입니다. 어플리케이션을 테스트할 때는 항상 메모리 사용량을 모니터하십시오.
네트워크 스트림 끝포인트 버퍼의 할당 모드 지정하기
[네트워크 스트림 발신자 끝포인트 생성] 및 [네트워크 스트림 수신자 끝포인트 생성] 함수의 원소 할당 모드를 사용하여 할당 모드를 지정합니다.
어플리케이션이 스칼라 타입이 아닌 데이터를 전송하고 실행 전에 각 데이터 원소의 최대 크기를 알 수 없는 경우, 필요할 때 할당 모드를 사용하십시오. 필요할 때 할당 모드에서 LabVIEW는 네트워크 스트림이 생성될 때 각 데이터 원소의 포인터 또는 핸들을 생성하는데 필요한 양의 메모리만 할당합니다. LabVIEW는 구 후 각 원소가 버퍼에 들어갈 때 추가 메모리를 다이나믹하게 할당합니다.
어플리케이션이 스칼라 타입이 아닌 데이터를 전송하고 실행 전에 각 데이터 원소의 최대 크기를 알 수 있는 경우, 미리 할당 모드를 사용하십시오. 미리 할당 모드에서 [네트워크 스트림 발신자 끝포인트 생성] 및 [네트워크 스트림 수신자 끝포인트 생성] 함수는 데이터 타입 입력 및 발신자 버퍼 크기 또는 수신자 버퍼 크기 입력에 근거하여 처음 버퍼 메모리를 할당합니다.
끝포인트 버퍼를 미리 할당하려면 데이터 타입 입력에 예상 크기가 최대인 원소를 연결해야 합니다. 다음 그림은 끝포인트가 생성될 때 100개의 문자열 원소에 각각 예제 문자열과 같은 최대 크기의 메모리를 할당하는 [네트워크 스트림 발신자 끝포인트 생성] 함수를 보여줍니다.
| 노트 실행 시 미리 할당된 메모리 양보다 원소가 더 많은 메모리를 필요로 하는 경우, 추가적인 메모리가 다이나믹하게 할당됩니다. |