inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

묻고 답해요

172만명의 커뮤니티!! 함께 토론해봐요.

synchronized vs ReentrantLock vs Atomic 너무 혼란스럽습니다..

해결됨

김영한의 실전 자바 - 고급 1편, 멀티스레드와 동시성

synchronized, ReentrantLock, Atomic 모두 상호배제(동기화)를 구현하지만, 락을 "획득하고 해제하는 과정" 자체도 동시 접근이 발생할 수 있는 또 다른 임계영역처럼 보입니다. → 그렇다면 이 락 자체 또한 어떻게 동기화하는지 궁금합니다. 핵심적으로, synchronized JVM이 모니터 락을 통해 상호배제를 구현하는데 내부적으로 CAS 연산 + OS의 스레드 대기 관련 시스템 콜 + JVM 내부 스레드 대기 큐 을 활용 상호배제를 구현한다. 즉, 락 획득과 해제 과정의 동기화는 JVM 수준에서 구현 한 것이다. OS는 단지 스레드를 잠재우고 깨우는 역할만 담당 → 이 이해가 맞는지? ReentrantLock 자바에서 명시적으로 CAS 연산 + OS의 스레드 대기 관련 시스템 콜 + 스레드 대기 큐 을 활용하여 상호배제를 구현한다. 즉, 락 획득과 해제 과정의 동기화는 자바 코드 수준에서 직접 구현 한 것이다. OS는 단지 스레드를 잠재우고 깨우는 역할만 담당 → 이 이해가 맞는지? Atomic 자바에서 명시적으로 CAS 연산 활용하여 상호배제를 구현한다. 즉, 락이 없고, 시스템콜도 없다. CAS 한 줄이 동기화의 전부 → 이 이해가 맞는지?

  • java
  • 객체지향
  • 동시성
  • multithread
  • thread
김민정 댓글 2 좋아요 2 조회수 268

[막강] IoC방법 공부를 할 때?

해결됨

옆집 개발자와 같이 진짜 이해하며 만들어보는 첫 Spring Boot 프로젝트

스프링 IoC를 공부하려면 @Configuration+@Bean 학습을 하려고 하는데, @AppConfig같은 것으로 공부를 해야하는지, 어떻게 해야할지 조그만한 힌트를 주시면 감사하겠습니다.

  • java
  • spring
  • rest-api
  • spring-boot
  • dbms/rdbms
갱스터 댓글 1 좋아요 1 조회수 194

질문 올려도 되는지..?

미해결

고성능 JPA & Hibernate (High-Performance Java Persistence)

여기 내용에서 대부분 통합 테스트시 h2 디비 인메모리 기반으로 테스트를 하는게 아니라,, docker 기반 mysql 설치후에 볼륨을 tmpfs 로 마운트한다음에 해도 빠르다는건가요,,?

  • java
  • jpa
  • hibernate
오개발 댓글 1 좋아요 0 조회수 313

오라클 jdk21 버전이 없어서 이클립스 21 하려 했는데 둘 다 없습니다.

미해결

김영한의 자바 입문 - 코드로 시작하는 자바 첫걸음

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. 오라클 jdk21 버전이 없어서 이클립스 21 하려 했는데 둘 다 없습니다. 찾아보니, 25년 초쯤에 오라클 24버전이 나와서 없어진듯 한데.,. 그 버전으로 해도 무방한가요?

  • java
  • 객체지향
유지하 댓글 2 좋아요 0 조회수 223

다대다를 일대다,다대일로 풀어낼 때 항상 양방향?

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

링크 위 질문의 AI 답변을 보면 다대다를 일대다,다대일로 풀어낼 때 양방향 매핑이 되어야 한다고 하였습니다. 근데 Member 나 Product 입장에서 MemberProduct 를 알 필요가 없으면 단방향으로 해도 되지 않나요?

  • java
  • jpa
조태준 댓글 1 좋아요 0 조회수 97

스트림: read()가 int를 반환하는 이유

해결됨

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

학습하는 분들께 도움이 되고, 더 좋은 답변을 드릴 수 있도록 질문 전에 다음을 꼭 확인해주세요. 1. 강의 내용과 관련된 질문을 남겨주세요. 2. 인프런의 질문 게시판과 자주 하는 질문(링크)을 먼저 확인해주세요. (자주 하는 질문 링크: https://bit.ly/3fX6ygx) 3. 질문 잘하기 메뉴얼(링크)을 먼저 읽어주세요. (질문 잘하기 메뉴얼 링크: https://bit.ly/2UfeqCG) 질문 시에는 위 내용은 삭제하고 다음 내용을 남겨주세요. ========================================= [질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 여기에 질문 내용을 남겨주세요. byte는 -128~127이고 int는 0~255 범위라 음수 부분이 전혀 겹치지 않는데, read()에서 어떤 방식으로 byte를 int로 변환하는 건지 대략적인 기준이 궁금합니다. 아스키 코드의 0~126까지는 그대로 int로 변환이 되고 그 외 byte의 음수가 그대로 int 나머지 범위(127~255)까지 배정되는 방식일까요? +)아스키 코드(0~126)에 포함되지 않는 byte -128~-1까지의 대략적인 의미가 궁금합니다. 얘네는 영문 외 외국어나 추가 특수 문자들 같은 걸까요?

  • java
  • 네트워크
  • 객체지향
자바재밌당 댓글 1 좋아요 0 조회수 124

jooq+flyway에서 질문드립니다

해결됨

실전 jOOQ! Type Safe SQL with Java

도커 컨테이너를 사용하여서 실행 시키는걸로 진행하셨는데 저는 도커를 데스크탑이 아니라 olima로 실행시키고 있어서 환경변수 에러가 나오더라구요 export로 변수 바꿔줘도 안돼서 데스크탑으로 실행해 보니 되기는 하는데, olima로 실행 할 수 있도록 하는 방법이 있을까요? 그리고 도커 컨테이너를 사용 안하고 flyway만 따로 설정하는건 어떻게 하는게 좋을까요? dev.monosoul.jooq-docker 이걸로는 도커가 무조건 설정되어있어야 하는거 같은데, nu.studer.jooq + flyway 조합으로 가는게 좋을까요? 1.olima로 인텔리j에서 dev.monosoul.jooq-docker 설정에 맞게 실행 시키는법 2.도커 없이 flyway 사용할때에는 nu.studer.jooq + flyway 이 조합으로 하는게 권장되는 방식인지?

  • java
  • sql
  • spring-boot
  • jooq
  • dsl
JaeWon Kim 댓글 2 좋아요 0 조회수 277

NotificationMessage가 필요한 이유 질문

해결됨

RabbitMQ를 이용한 비동기 아키텍처 한방에 해결하기

학습중 궁금한 것은 언제든 문의 하세요. 질문을 최대한 자세히 남겨주시면 반드시 답변 드리도록 하겠습니다. 추가로 알고 싶은 내용도 요청해주시면 강의 자료를 업데이트 해서 제공할 예정입니다. Pub-Sub 모델을 이용한 실시간 알림 part2에 질문이 있습니다 ! package com.example.messagequeue.step2.step2; public class NotificationMessage { private final String message; public NotificationMessage() { message = ""; } public NotificationMessage(String message) { this.message = message; } public String getMessage(){ return message; } } 짊여기에서 NotificationMessage DTO를 만들어주셧는데, 뭐 때문에 만드신걸까요 ? 직렬화, 역직렬화와 관련이 있는거 같은데, 잘 이해가 안되네요 ㅎㅎ 답변 주시면 감사드리겠습니다 !

  • java
  • spring-boot
  • jpa
  • msa
  • websocket
  • rabbitmq
jerry 댓글 2 좋아요 0 조회수 127

joinColumns, inverseJoinColumns

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

@JoinTable 에서 joinColumns 와 inverseJoinColumns 속성은 컬럼명을 직접 정하기 위함이고 해당 속성들이 없을 때는 컬럼명이 자동으로 설정 되는 것이라고 보면 될까요?

  • java
  • jpa
조태준 댓글 1 좋아요 0 조회수 84

JDK17에서 ExecutorService 클래스 내 close() 함수가 없는 오류

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

[질문 템플릿] 1. 강의 내용과 관련된 질문인가요? (예/아니오) 2. 인프런의 질문 게시판과 자주 하는 질문에 없는 내용인가요? (예/아니오) 3. 질문 잘하기 메뉴얼을 읽어보셨나요? (예/아니오) [질문 내용] 1. 예 예 예 안녕하세요. 강의 잘 듣고 있습니다! 강의 3분 44초 전후로 ExecutorService를 close() 함수로 닫으셨는데 es.close() 부분에서 오류가 발생합니다(스크린샷 참고). 찾아보니 Java 9 이상에서 ExecutorService 구현체가 AutoCloseable 을 구현한 경우에만 close()를 사용 가능 하다고 하는데 현재 JDK 17 버전을 쓰고 있는데도 close() 함수를 찾지 못하고 있습니다. (다만 shudown() 함수를 사용하니 정상적으로 컴파일이 되고 닫히고 있습니다) close() 대신 shutdown()을 사용하여도 성능상 차이가 없는지 궁금합니다. 글이 길어져서 죄송합니다. 답변 부탁드립니다. 감사합니다.

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
  • executorservice
  • close()
  • jdk17
KYUNG TAE BAE 댓글 1 좋아요 0 조회수 146

app.host 관련 질문이 있습니다

미해결

스프링과 JPA 기반 웹 애플리케이션 개발

dev 프로퍼티 파일에 app.host 를 정의하지 않고 dev 환경으로 실행후, 메일을 보낼시 host 값이 http:// localhost:8080 으로 어떻게 넣어지는건가요? dev 프로퍼티 파일에 정의가 안되어 있으면 local 프로퍼티 파일을 참조하게 되는것인가요...?

  • java
  • spring
  • spring-boot
  • jpa
  • thymeleaf
kolla 댓글 1 좋아요 0 조회수 113

정보처리기사 시험 관련 질문 드립니다. 풀이란 이외 공간에 풀이 가능 여부

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

엊그제 정보처리기사 시험을 처음 보게되었습니다. 한 장에 시험 문제가 1~2개 정도 있고 밑에 풀이란이 있습니다. 이때 문제를 풀때 풀이란에만 풀지 않고, 각 문제 옆에 빈공간에 도 풀었는데 감점 혹은 탈락 요인인가요? EX)코드가 있는 경우 각 코드 옆에 변수값 표시 등. 정답을 적는 곳 부근에는 따로 풀이나 표시 등은 하지 않았습니다.

  • python
  • java
  • c
  • 정보처리기사
unikaive730 댓글 2 좋아요 0 조회수 350

MySQL 연결 오류

미해결

자바와 스프링 부트로 생애 최초 서버 만들기, 누구나 쉽게 개발부터 배포까지! [서버 개발 올인원 패키지]

태현님 안녕하세요 좋은 강의 잘 듣고 있습니다. 수강하면서 실습 진행하면서 3번 정도 mysql 연결 오류가 발생해서 gpt를 통해 해결해보려고도 하고 구글링도 해보았지만 근본적인 해결이 안되어 고민 끝에 질문 남깁니다. 우선, 문제 상황을 말씀드리면 mysql 설치 후 인텔리제이에서 연결도 잘되어 실습을 진행하다 [S1009] !AuthenticationProvider. BadAuthenticationPlugin! 라는 메시지가 뜹니다. mysql 8.0 CLI-Unicode 에 들어가서 초기에 설정한 비밀번호를 입력하면 바로 unicode가 종료되어 진입 조차 불가능합니다. cmd 실행하여 mysql -u root -p 명령을 입력해서 정확한 비밀번호를 입력하면 ERROR 2059 (HY000): Authentication plugin 'auth_gssapi_client' cannot be loaded: ÁöÁ¤µÈ ¸ðµâÀ» ãÀ» ¼ö ¾ø½À´Ï´Ù. 에러 메시지가 뜹니다. 최후의 수단으로 mysql 관련 모든 파일 및 프로그램 삭제 후 재설치하여 인텔리제이 연동해서 실습이 정상적으로 진행이 되다가 랩탑을 몇 번 껐다 키면 위의 문제가 반복됩니다. 왜 저런 문제가 발생하고, 어떻게 해야 해결이 가능할까요..? 지금까지는 완전 삭제 및 재설치하여 db 테이블 구성을 처음부터 다 다시 하면서 실습을 어떻게든 따라했지만 근본적인 해결책을 찾고 싶어 질문 드립니다.

  • java
  • spring
  • aws
  • mysql
  • spring-boot
  • jpa
qkrwlsgh98 댓글 2 좋아요 1 조회수 368

C언어 malloc

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

이번 시험 c언어 문제들이 코드에 다 malloc이란 키워드가 있던데 영상하나 만들어 주시면 안될까요..

  • python
  • java
  • c
  • 정보처리기사
xogus3456 댓글 2 좋아요 0 조회수 366

서브넷 관련해서 강의 영상 하나 다뤄주세요 ㅠㅠ

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

디테일한 이론은 안가신다고 하시긴 하셨는데 서브넷 관련해서 하나 알려주시면 감사할거같아요 ㅠㅠ 서브넷이 계속 출제되는거 같습니다

  • python
  • java
  • c
  • 정보처리기사
  • 서브넷
공부하는문과생 댓글 2 좋아요 0 조회수 233

클래스 메서드가 함수가 아닌 이유

미해결

김영한의 실전 자바 - 고급 3편, 람다, 스트림, 함수형 프로그래밍

안녕하세요. 강사님! 클래스 메서드 역시 클래스에 소속되어있기 때문에 인스턴스에 독립적이더라도 함수가 아닌 메서드로 보는 것이라 이해해도 될까요?

  • java
  • 함수형-프로그래밍
  • lambda
  • optional
최용준 댓글 1 좋아요 0 조회수 147

주문취소문의

미해결

실전! 스프링 부트와 JPA 활용1 - 웹 애플리케이션 개발

주문취소 부분에 cancel()을 실행하면 왜 db업데이트가 되는지 이해가잘안갑니다 . 주문을 저장할때처럼 엔티티매니저에서 persist를 해주어야 commit되는게 아닌가요 ?

  • java
  • spring
  • 웹앱
  • spring-boot
  • jpa
이호경 댓글 1 좋아요 0 조회수 70

엔티티타입의 의미

미해결

자바 ORM 표준 JPA 프로그래밍 - 기본편

안녕하세요. 단어의 의미가 조금 모호한거같아서 질문드립니다. 엔티티타입 은 @Entity가 붙은 클래스의 타입을 의미하는것인가요? 아니면 @Entity가 붙은 클래스로 만든 객체를 의미하는것인가요?

  • java
  • jpa
오리쉐리 댓글 1 좋아요 0 조회수 96

23분 51초

해결됨

(2026 최신!) 일주일만에 합격하는 정보처리기사 실기

만약에 Base a = new Derivate(); 가 아니라 Base a = new Base(); 로 바껴서 문제가 나온다면, 6+3+21+7 이 되어서, 37이 답인가요? 아니면 업캐스팅이 아니여도 자식에게 재정의가 되어있으면 무조건 재정의 되어있는걸로 가야하나요?

  • python
  • java
  • c
  • 정보처리기사
꿈나무 댓글 2 좋아요 0 조회수 141

인기 태그

인프런 TOP Writers

주간 인기글