멀티스레드 환경이라는 것은 다시말해 호출 스택이 여러개 존재하는 것이다 라는 이야기를 지난번에 했었습니다. 하지만 실제로 이렇게 만들어진 다중 스택들은 동시에 작업을 수행하는 것이 아니고 싱글 코어 환경이거나 혹은 스레드의 숫자가 코어의 숫자보다 더 많은 경우에는 스레드 스케줄러에 의해서 순차적으로 번갈아 가며 작업이 수행되게 됩니다. JVM은 우선순위(Priority)방식과 순환할당(Round-Robin)방식을 사용해 스레드 스케줄링을 합니다. 우선순위 방식은 우선순위가 높은 스레드에 더 많은 시간을 할당하는 방법이고, 순환할당 방식은 각각의 스레드에 정해진 시간만큼을 할당하고 돌아가면서 수행하는 것을 의미합니다. 우선순위 방식을 통해 해당하는 스레드의 할당 시간을 조절하려면 Thread 클래스에 있는..
자바의 작동 방식에 대해서 간략하게 알아보도록 하겠습니다. 먼저 자바 언어 규칙에 따라 만들어진 소스 코드가 필요합니다. 이 소스 코드는 컴파일러로 보내지고 컴파일러에서 바이트코드로 변환되어 나오게 됩니다. 컴파일된 소스코드를 Java virtual machine이 실행합니다. 자바 코드의 구조입니다. 가장 먼저 클래스가 있고 그 안에 메서드, 메서드 안에는 선언문들이 존재합니다. 클래스와 메서드, 선언문 이 세가지가 자바 코드를 이루는 기본이라고 할 수 있습니다. 이렇게 코딩 된 코드는 컴파일러로 전달되어 바이트 코드로 바뀌게 됩니다. 컴파일러는 한 언어를 다른 언어로 번역하는 번역기의 역할을 하고 보통은 고급언어를 기계어에 가까운 언어로 바꾸는 역할을 합니다. 프로그래밍 언어는 대부분 인간이 이해할 ..
그레이들(gradle) 이란? 그레이들(Gradle)은 그루비(Groovy)를 기반으로 하는 빌드 시스템 또는 빌드 도구이다. 지금은 앤트(Ant)나 메이븐(Maven)이 많이 사용되지만, 유연함과 더불어 스크립트 기반의 처리 구조로 빌드 시스템의 세계에서 강력함을 지니고 탄생한 그레이들은 2007년부터 오픈소스 소프트웨어로 시작하여 짧은 역사에도 주목받는 빌드 도구로 성장했다. 2013년 구글에서 안드로이드 애플리케이션 개발에 사용되는 공식 빌드 도구로 그레이들을 채택하는 등 앞으로 더욱 발전하여 강력한 빌드 도구가 될 것이다. 아직까지는 메이븐의 아성을 뛰어넘지 못하고 있지만 무서운 성장세를 고려해 봤을때 조만간 배우지 않으면 안될 빌드툴이 될 것이다. 오늘은 gradle로 기본적인 자바 프로젝트를 ..
- Total
- Today
- Yesterday
- 유지보수
- Warning
- java
- html
- 전략패턴
- Markov
- Spring in Action
- 코딩의 기술
- 마르코프 연쇄
- Count
- REST API
- 디자인패턴
- was
- markov chain
- 경고
- CONVENTIONS
- 크롬
- 마르코프
- 동적계획법
- 몰라서망신
- 문장 생성기
- 자바스크립트 개론
- 야근
- GROUP BY
- 로그
- RESTful
- 클린코드
- DP
- restful api
- 자바스크립트개론
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |