.NET 스트림을 바이트 배열 변환으로 최적화합니다
스트림을 .NET의 바이트 어레이로 변환하기위한 몇 가지 방법이 존재합니다. 이 기사는 더 간단한 기술의 한계를 해결하는 가장 효율적인 접근법을 탐구합니다.
너머
스트림을 바이트 어레이로 변환하기 위해 를 사용하는 동안 (특히 .NET 3.5에서) 스트림의 길이를 미리 알아야합니다. 이것은 항상 실용적이지는 않습니다.
알 수없는 스트림 길이 처리
알 수없는 길이의 스트림에는보다 강력한 솔루션이 필요합니다. 일반적인 접근 방식은 청크에서 스트림을 읽고 각 청크를 에 추가하는 것과 관련이 있습니다.
Custom
함수
사용자 정의 함수는이 청크 독서를 달성하는 깨끗한 방법을 제공합니다. 이 방법은 스트림 끝이 도달 할 때까지 반복적으로 데이터를 읽고 추가하여 길이 요구 사항없이 BinaryReader
의 기능을 효과적으로 반영합니다.
리버
(.NET 4)
.NET 4 이상 버전은 편리한 메소드를 제공합니다. 이것은 스트림의 내용을 A BinaryReader
로 직접 복사하여 프로세스를 단순화 한 다음 바이트 어레이로 쉽게 변환 할 수 있습니다.
큰 스트림의 성능 튜닝
Both the chunked approach and involve memory allocation and copying. 작은 스트림에는 허용되지만 성능은 큰 스트림으로 어려움을 겪을 수 있습니다. 최적화 전략에는 예상 크기로
를 사전 할당하거나 효율성 향상을 위해보다 직접 버퍼 사본 작업을 사용하는 것이 포함됩니다.위 내용은 스트림을 .NET의 바이트 배열로 변환하는 가장 좋은 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!