문제

문서는 단순히 readblock이라고 말합니다

"읽기의 차단 버전"

그러나 그게 무슨 뜻입니까?

다른 사람이 전에 질문을했지만 응?

http://www.pcreview.co.uk/forums/thread-1385785.php

대답하는 사람이 말했다

기본적으로 StreamReader.ReadBlock에 의존 할 수 있음을 의미합니다. READBLOCK는 요청한만큼 읽거나 스트림의 끝에 도달 할 때까지 돌아 오지 않습니다.

읽기가 당신에게 요청한 모든 것을 줄 수 없기 때문에 이것이 필요하다는 것을 정확하게 이해하고 있습니까? 그리고 그것이 0을 반환한다고해서 파일의 끝에 도달했음을 의미하지는 않습니까?

따라서 이것은 반환 된 바이트 수 (endofstream?) 이외의 것을 확인하거나 대신 readBlock을 사용하는 것을 의미합니까?

도움이 되었습니까?

해결책

readBlock이 스레드 안전하다는 의미는 아닙니다. 반사판을 사용하여 StreamReader.ReadBlock (TexTreader.ReadBlock에서 상속됨)의 구현을 보면 "읽기"메소드가 0을 반환하거나 읽은 다음으로 읽을 때까지 "읽기"메소드를 여러 호출하는 것입니다. 요청 된 많은 바이트. "읽기"메소드가 반드시 요청한만큼 많은 바이트를 반환 할 필요는 없기 때문에 필요합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top