묻고 답해요
158만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
문자 집합 호환성 여부를 판단할 때
어떤 두 문자 집합이 호환되는지의 기준은 해당 언어를 표현하는 바이트가 일치해야함그리고 해당 문자 집합들의 문자의 바이트(비트) 값이 일치해야함.위 두가지를 모두 만족한다면 두 집합은 서로 호환된다고 이해하면 될까요?
-
미해결[C++과 언리얼로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
send하려는 데이터 크기가 크면 memcpy에서 문제가 발생할 것 같습니다.
여기서 만약 복사 시작지점 + len 이 array 범위 밖이면 sendBuffer->Close(len) 안에서ASSERT_CRASH(_allocSize >= len); 으로 체크하기 전에 array 정적배열에 memcpy를 하니까 이 부분에서 문제가 생길 것 같습니다.OnRecv로 들어온 buffer가 6001바이트짜리 라면 Open(4096)이 성공하고, 6000크기의 배열에 6001크기를 memcpy 하니 오버플로우가 일어날 것 같습니다.아니면 Open(4096)으로 chunk로부터 사용할 수 있는 공간을 할당 받을 때 len이 4096보다 반드시 작을거라는 확신이 있기 때문에 memcpy 전에 확인하지 않는건가요?
-
해결됨외워서 끝내는 네트워크 핵심이론 - 기초
라우터에 대해 궁금합니다
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 앞선 강의에서 ip 주소가 근거일 때 교차로에 해당하는 게 L3 Switch => Router라고 설명해서 그렇게 이해하고 있었는데, 지금 L2 Access switch가 한 방, L2 Distribution switch가 한 층, 건물 하나가 Router라고 하셔서 혼동이 옵니다. Router는 L2가 아니라 L3의 개념인데 그냥 단위가 그렇게 커진다고 이해하면 되는 것인가요?
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
utf-8, char
utf-8로 지정해서 IO 작업을 하더라도,utf-16인 (char)로 형 변환이 가능한 이유가 궁금합니다. char는 ascii와 호환이 안되지않나요..?StringBuilder content = new StringBuilder(); FileReader fr = new FileReader(FILE_NAME, UTF_8); int ch; while ((ch = fr.read()) != -1) { content.append((char) ch); } fr.close();
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
RequestBody를 읽어올 때
RequestBody를 읽어올 때,Content-Length의 값을 파싱하고 그 크기만큼 read()에 배열 형태로 전달해서 버퍼형태로 한번에 받아오게끔 작성하셨습니다. 여기서 궁금한 점은,Content-Length는 byte 단위로 측정이 될텐데,char[]를 그대로 사용하면 UTF-8로 디코딩이 자동으로 되는 이유가 궁금합니다..! byte[] 단위로 읽어온 다음,Charset을 지정해서 디코딩해야하는거 아닌가욤? 감사합니다!
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
C#에서 생성자 관련 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 유니티와 C#의 부족한 지식을 위해 강의를 듣고있는데 궁금한 점이 생겨 질문합니다.개인 프로젝트를 진행할 때 Init함수 등을 사용해서 오브젝트 풀링한 몬스터들을 Init함수로 전체 데이터를 초기화 해왔었는데, C#에서도 생성자를 사용해서 첫 생성된 오브젝트들의 변하지 않는 데이터(이름, 공격력, 방어력 등)를 생성자로 초기화를 하고, 다시 풀링되는 오브젝트들의 변하는 데이터 (HP, MP 등)은 Init함수를 통해 풀링하는 식으로 만드는것이 좋은 방법인가요?
-
미해결[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part4: 게임 서버
스핀락 질문.
스핀락에서 스레드1이 나오자마자 다시 들어가는 경우는 불가능한가요?? 딱 마침 스레드2보다 먼저 CPU를 선점할 수도 있는거 아닌가요? 계속 돌려봐도 0이 나오네요. 타이밍이 좋게 한 놈이 반복해서 들어갈 수도 있는 구조 아닌가 궁금합니다.
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
synchronized 사용
Client의 close()에 synchronized를 사용하는 것은 이해가 됐습니다. ReadHanlder, WriteHandler 양쪽에서 동시에 호출할 수 있기 때문이라고 생각하면 바로 이해되는데... ReadHandler, WriteHandler의 close()에는 어떤 이유로 동기화 처리를 하는건지 궁금합니다. (해당 스레드들은 Client에서만 접근되는게 아닌가요?) 그리고 모든 IO 스트림이 Client 클래스에서 관리되는데 굳이 핸들러에도 close()를 두신 이유가 궁금합니다!
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
closed 플래그 변수 사용 이유
안녕하세요! SessionV6에서 closed 변수를 사용하는 이유를 모르겠습니다! 어차피 close();가 몇번이건 호출되어도 예외가 발생안할텐데 체크하는 이유가 뭔지 알고싶습니다!
-
미해결CloudNet@ - AWS 네트워킹 입문
강의 자료 ?
인터넷게이트웨이와 NAT 게이트웨이 4분 20초 ~ 4분 50초 까지 그림 자료가 빠진걸까요? 마우스 포인트로 뭔가 가르키면서 하시는데 그림은 없어서요
-
해결됨모든 개발자를 위한 HTTP 웹 기본 지식
브라우저 캐시가 60초 유효하다는게 무슨 뜻일까요
브라우저 캐시가 60초 유효하다는게 무슨 뜻일까요서버가 [캐시 시간이 60초] 응답하면클라이언트가 60초안에 동일한 이미지를 요청하면 그 캐시를 사용한다. 그리고 60초가 지나면 클라이언트가 서버에 조건부요청,Etag로 요청, 서버에서 리소스가 변경되지 않았다면 302 응답을 하여, 클라이언트가 브라우저의 캐시를 사용한다. 이렇게 이해했습니다. 맞을까요?궁금한건 60초 라는 시간인데 이해한 바로는 저 시간이 지나도 캐시가 사라지는건 아닌 것 같은데, 저 시간의 역할이 정확히 뭘까요? 서버에서 응답한 캐시를 다시 요청하면 브라우저의 캐시를 사용하는 시간 이라고 보면될까요? 그럼 예시로는 1분동안 해당 리소스가 변경되지 않을거라고 보장하는 건가요?
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장
안녕하세요,, 취준하고 회사 일 적응하느라 시험 준비를 아직 못했습니다..수강 기간 연장해주시면 열심히 듣고 취득 하겠습니다.감사합니다.
-
미해결김영한의 실전 자바 - 고급 2편, I/O, 네트워크, 리플렉션
멀티스레드에서 가정
멀티스레드의 동작원리를 머릿속으로, 그림으로 그릴 때 실제 여러 쓰레드에서 특정 자원에 접근 또는 메서드 호출을 '물리적으로 동시에' 한다고 생각해도 괜찮을까요? (현대 컴퓨터의 경우 기본 CPU 코어가 멀티코어로 이루어져있어 가능하다고 하셨던게 기억납니다)
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
RDS 비밀번호 관리 방식 문의
안녕하세요, 강사님.항상 강의 잘 듣고 있습니다.RDS 구성 시 비밀번호 관리 방식을 자체 관리가 아닌 AWS Secrets Manager를 사용하는 방식으로 선택할 경우,비밀번호가 자동으로 생성되고 주기적으로 교체되기 때문에 관리가 편리하다는 장점이 있는 반면, 다음과 같은 의문이 생겼습니다:Secrets Manager에서 관리되는 비밀번호는 길고 복잡하며, 일정 주기로 교체되는데이런 경우 팀원들에게 어떻게 공유하는 것이 일반적으로 권장되는 방식인지 궁금합니다.교체될 때마다 비밀번호를 일일이 전달하는 것은 번거롭기 때문에,팀원들이 IAM 권한을 통해 Secrets Manager에서 직접 비밀번호를 조회하게 할 수 있나요?더불어, 팀 단위 운영 환경에서 자체 관리 방식과 Secrets Manager 중 어떤 방식이 실무적으로 더 적합한지에 대해서도 의견을 주시면 감사하겠습니다.AWS Secrets Manager가 유료서비스이다보니,,관련하여 강사님의 경험이나 실무적인 조언을 듣고 싶어 이렇게 문의 드립니다.바쁘시겠지만 확인해주시면 감사하겠습니다.좋은 하루 되세요!
-
미해결AWS Certified Solutions Architect - Associate 자격증 준비하기
수강기간 연장 부탁드립니다.
죄송합니더ㅠ 게을러서 못봤습니다. 한번 더 기회를 줍쇼
-
미해결처음하는 컴퓨터공학(CS 지식) 부트캠프 | 컴퓨터구조, 운영체제, 네트워크
16 x 1 RAM array / 1-to-2 Decoder와 8x1 RAM의 연결
- 강의 영상에 대한 질문이 있으시면, 상세히 문의를 작성해주시면, 주말/휴일 제외, 2~3일 내에 답변드립니다 (이외의 문의는 평생 강의이므로 양해를 부탁드립니다.)- 강의 답변이 도움이 안되셨다면, dream@fun-coding.org 로 메일 주시면 재검토하겠습니다. - 괜찮으시면 질문전에 챗GPT 와 구글 검색을 꼭 활용해보세요~- 잠깐! 인프런 서비스 운영(다운로드 방법포함) 관련 문의는 1:1 문의하기를 이용해주세요. 강의: 섹션 5. 컴퓨터 구조 파트: 메모리 구조와 동작 이해 - 12. 64K 메모리 동작 구성 이해주제: 16x1 RAM array질문: 1-to-2 Decoder와 Write의 연결에 오류가 있지 않나 싶습니다.1-to-2 decoder 출력이 두 8x1 RAM의 DI에 연결되어 Write가 1일때 DataIn의 값에 따라 (0, 1) 또는 (1, 0) 2개 비트가 저장되는 모양으로 이해됩니다.DataIn은 두 8x1 RAM의 DI로 직연결되고, Write가 1-to-2 Decoder를 통해 두 8x1 RAM의 W로 연결되어야 할 것 같습니다.
-
미해결CloudNet@ - AWS 네트워킹 입문
리뉴얼 예정
안녕하세요리뉴얼이 7월 중순쯤이라고 했었는데 혹시 언제쯤 예정일까요?
-
해결됨AWS Certified Solutions Architect - Associate 자격증 준비하기
수강 기간 연장 부탁드립니다..
항상 좋은 강좌 감사합니다!갑작스러운 보직변경으로 한동안 강의에 집중하지 못했습니다..연장해주시면 완강까지 열심히 달려보겠습니다.수강기한이 임박한 시점에서 갑작스럽게 연락드려 정말 죄송하지만 잘 부탁드립니다..
-
해결됨기초 탄탄! 독하게 시작하는 Java Part 3(하) : 소켓과 파일 I/O
파일 접근 오류 (경쟁 조건) <-- Lock 관련 질문
해당 로직을 보니깐 리엔트리 락을 사용 하고 있는 것을 보여집니다.그런데 말씀 하신 내용 처럼 T1 스레드가 "Hello"T2 스레드가 "World" 특정 파일에 쓰기를 동시적으로 여러번 하는데HWellorl <-- 이렇게 단어가 혼잡되어서 쓰기가 되지 않는 이유에 대해서 이해가 안가서 질문 드립니다. 1번 쓰레드가 writeData("Hello");2번 쓰레드가 writeData("World"); 이렇게 멀티스레드로 실행하게 된다면 writeData 메소드를 구현하신 내용을 보면 FileWriter writer = new FileWriter("C:/Tmp/test.txt");이렇게 새롭게 인스턴스를 새롭게 만들어서 각각 실행하기 때문에 this.lock해당 lock 객체를 호출 할때 각각 스레드 수준에서 ThreadSafe 한 것이 아닌가요? (제가 잘못 알고 있을 수도 있습니다! ) 그러니깐 만약 이렇게FileWriter writer = new FileWriter("C:/Tmp/test.txt"); Thread t1 = new Thread(new Runnable() { @Override public void run() { try { writer.write("World");("Hello"); } catch (IOException e) { throw new RuntimeException(e); } } }); Thread t2 = new Thread(new Runnable() { @Override public void run() { try { writer.write("World"); } catch (IOException e) { throw new RuntimeException(e); } } }); writer 전역 변수를 만약에 T1 쓰레드하고 T2 쓰레드가 동일하게 참조해서 사용한다면 이해가 갈텐데선생님께서 만들어주신 코드는 지역 변수로 FileWriter 객체를 생성하고 지역 변수 내에서 소멸되기 때문에 T1, T2 하고 동시화 기법에는 동작 하지 않을 것 같아서 질문 드립니다.
-
미해결[게임 프로그래머 입문 올인원] C++ & 자료구조/알고리즘 & STL & 게임 수학 & Windows API & 게임 서버
특정 조건에서만 함수를 반환할 때
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 반환 값이 있는 함수를 작성할 때 특정 조건에서만 반환해도 컴파일 단계에서 문제 없이 컴파일 됩니다.빌드를 시켜 실행 시키면 1로 반환 되던데 1로 반환 되는 이유는 뭔가요??