Dev Factory
close
프로필 배경
프로필 로고

Dev Factory

  • 분류 전체보기
    • Skill
      • JVM
      • Spring Framework
      • JPA(Hibernate)
      • jOOQ
      • Kafka
      • k8s
    • Computer Science
      • Data Structure
      • Database
      • Network
      • OS
    • Theory
  • 홈
  • 방명록
  • Github
  • LinkedIn
[Java] JVM Class Loader

[Java] JVM Class Loader

Class Loader 자바 소스코드가 실행되는 과정은 다음과 같다 자바 컴파일러가 소스 코드(.java) → 바이트 코드(.class)로 컴파일 생성된 바이트 코드는 완전한 기계어가 아니고 JVM이 이해할 수 있는 레벨의 코드 컴파일된 바이트 코드를 필요한 시점에 Class Loader가 JVM Runtime Data Area에 동적 로드 클래스 로딩은 Lazy Loading 방식으로 실제 해당 클래스가 사용될 때까지 로딩을 미룬다 로드된 바이트 코드를 인터프리터 & JIT 컴파일러에 의해서 기계어로 번역한 후 실행 ClassLoader의 주요 역할은 컴파일된 바이트 코드를 필요한 시점에 동적으로 JVM에 로드하고 이 과정에서 여러 검증 및 초기화를 진행한다 Class Loader 원칙 1. Deleg..

  • format_list_bulleted Skill/JVM
  • · 2023. 12. 9.
  • textsms
[Java] ThreadPool

[Java] ThreadPool

ThreadPool어떤 요청이 들어왔을 때 해당 요청을 처리하기 위해서 쓰레드를 사용하는 가장 심플한 방법은 요청마다 쓰레드를 생성하고 할당하는 것이다쓰레드가 필요한 시점에 생성 요청OS가 해당 쓰레드를 위한 메모리 영역 확보 및 할당OS Level에서 Native Thread를 위한 메모리 영역을 할당생성된 Native Thread와 User Level Thread 매핑Thread's start() 코드 내부에서 JNI를 통해서 Native Code 호출 (with C++)쓰레드 생성 및 Task 실행...쓰레드 사용이 끝나면 OS는 쓰레드를 위해 할당한 메모리 영역을 회수 이러한 과정이 매번 반복되고 결국 이러한 부분들이 쌓이게 되면 불필요한 리소스가 너무나도 많이 낭비가 된다고 볼 수 있다따라서 A..

  • format_list_bulleted Skill/JVM
  • · 2023. 11. 10.
  • textsms
  • navigate_before
  • 1
  • navigate_next
전체 카테고리
  • 분류 전체보기
    • Skill
      • JVM
      • Spring Framework
      • JPA(Hibernate)
      • jOOQ
      • Kafka
      • k8s
    • Computer Science
      • Data Structure
      • Database
      • Network
      • OS
    • Theory
최근 글
인기 글
최근 댓글
전체 방문자
오늘
어제
전체
Copyright © 쭈미로운 생활 All rights reserved.
Designed by JJuum

티스토리툴바