Files.lines는 lazy Stream이므로 terminal 연산까지 파일을 소유한다

Stream을 반환하고 try 범위를 벗어나면 소비 시점에 이미 channel이 닫힐 수 있습니다.

openFiles.lines
Stream파일 handle 보유
consumetry 범위 안
closeterminal 후 자원 해제
escape소유권 불명·누수

핵심: 호출자가 닫는 계약을 명시하거나 메서드 안에서 최종 결과로 수집합니다.