inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션

네트워크 예외4 - 강제 종료

closed 사용하는 이유

209

tjrans303

작성한 질문수 15

0

NormalCloseServer 할때 close()가 여러번 호출돼도 예방하는 코드가 있다고 했습니다. 그러면 V6SessionV6에서 closeAll() 하기전에 closed를 확인 안해도 되지 않나요?

java 네트워크 객체지향

답변 2

0

김영한

안녕하세요. tjrans303님

SessionV6의 close()의 의도는 단순히 socket만 닫는 것이 아니라 그 외에 추가적인 정리 로직도 함께 포함되어 있다고 보시면 됩니다. 예를 들어서 SessionV6의 close()에서 더 많은 코드가 들어가게 된다면 한 번만 받는 것이 보장되는 것이 더 나은 코드겠지요?

감사합니다.

0

인프런 AI 인턴

안녕하세요, 인프런 AI 인턴입니다.

이와 관련된 질문은 Java의 네트워크 프로그래밍에서 자원 해제를 올바르게 처리하는 과정에 대해 다루고 있습니다. 실수로 ‘close()‘를 여러 번 호출하는 것을 방지하는 메커니즘을 이해하려면, 관련 객체가 자원이 해제되었는지를 확인하고, 이미 해당 자원이 해제되었을 경우에는 추가적인 작업을 피하는 로직이 필요합니다.

기본적으로 모든 자원은 한 번만 닫혀야 하며, Java에서는 ‘closed’ 상태를 확인함으로써 불필요한 호출을 방지할 수 있습니다. 이를 통해 올바른 자원 해제를 할 수 있고, 자원의 잠금, 메모리 릭 등을 방지할 수 있습니다.

아래 링크는 관련 주제와 비슷한 질문에 대한 답변을 다룬 게시물입니다. 자바에서의 ‘close()‘와 관련된 자원 관리에 대한 충분한 설명을 제공하고 있습니다.

이 답변들이 도움이 되시길 바라며, 추가적인 궁금증이 있으시다면 언제든지 질문해 주세요. 강사님이 곧 답변을 제공하실 것입니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

RequestHandler 버전 간 process() 파라미터 차이 질문

0

76

2

리플렉션 default

0

57

1

그럼 SOURCE나 CLASS는 어떤 경우에 사용하나요?

0

83

2

네트워크 프로그램 자원종료 Socket 정리 시 closed 사용 문의

0

105

2

FileInputStream의 transferTo 사용 시 Buffer 문의

0

67

1

오타 제보 드립니다

0

76

2

강좌 복습 팁이 있으신 분들 공유해주시면 감사하겠습니다.

0

114

1

16강 질문있습니다.

0

53

1

한글이 깨질 떄 어떻게 해야 하나요?

0

83

1

자원 정리시 에러가 발생 했을 때 메모리 상황 및 실무에서 로그 확인 방법

0

96

1

인텔리제이에서 네모(스탑버튼) 누르는 것의 의미

-1

71

1

강의 섹션 8: 네드워크 -프로그램 3부분 10:45 오타?

0

90

2

제대로 이해한게 맞나 궁금합니다

0

80

1

File,Files 강의 2번쨰 Files 07:30 에 tmep 파일들을 다 지운건가요 ?

0

65

1

/.well-known/appspecific/com.chrome.devtools.json 에러에 대해서

0

639

1

Socket 자원을 정리할때 stream 을 정리하지 않는 이유가 궁금합니다.

0

95

1

클라이언트 강제종료시 오류 메세지

0

112

2

고급 2편에는 퀴즈가 없네요?

0

102

1

55. 네트워크 프로그램5 - 자원정리2 질문

0

69

1

클라이언트가 FIN과 함께 보내는 ACK는 무엇에 대한건가요?

1

111

2

BufferedInputStream이 1바이트씩 조회해도 성능이 좋은 이유

0

83

1

오타제보

0

65

2

문자 집합 호환성 여부를 판단할 때

0

55

1

utf-8, char

0

57

1