Java

· 강의
들어가기 전..1. 이전 게시글과 이어지는 게시글이므로 프로젝트 환경 및 세팅은 아래 링크에서 확인해주세요! 2. 전체 코드는 아래의 Git에서 확인 가능합니다. [재고시스템으로 알아보는 동시성 이슈 해결방법] #2 재고감소 로직 작성 및 테스트들어가기 전 .. 1. 이전 게시글과 이어지는 게시글이므로 프로젝트 환경 및 세팅은 아래 링크에서 확인해주세요! 2. 전체 코드는 아래의 Git에서 확인 가능합니다! 참고하면 좋을 이전 글 [재고시dev-rosiepoise.tistory.com GitHub - dev-rosieposie128/stock: 재고시스템으로 알아보는 동시성이슈 해결방법재고시스템으로 알아보는 동시성이슈 해결방법. Contribute to dev-rosieposie128/stock deve..
· 강의
들어가기 전 .. 1. 이전 게시글과 이어지는 게시글이므로 프로젝트 환경 및 세팅은 아래 링크에서 확인해주세요! 2. 전체 코드는 아래의 Git에서 확인 가능합니다! 참고하면 좋을 이전 글 [재고시스템으로 알아보는 동시성 이슈 해결방법] #1 개발환경 및 프로젝트 구조 들어가기 전 1. 매일 정리해야지 하며 미뤄두었던, 동시성 이슈 해결방법 강의를 정리하려 한다. 2. 동시성 이슈를 고려한 개발을 해보지 않아서 나한텐 흥미로운 접근방식의 강의였다. 3. 책에서 dev-rosiepoise.tistory.com GitHub - dev-rosieposie128/stock: 재고시스템으로 알아보는 동시성이슈 해결방법 재고시스템으로 알아보는 동시성이슈 해결방법. Contribute to dev-rosieposie..
· 강의
들어가기 전 1. 매일 정리해야지 하며 미뤄두었던, 동시성 이슈 해결방법 강의를 정리하려 한다. 2. 동시성 이슈를 고려한 개발을 해보지 않아서 나한텐 흥미로운 접근방식의 강의였다. 3. 책에서 단편적으로만 경험했던 멀티스레드, 다중 서버 환경에서 실무적인 문제에 입각한 해결론을 제시한 강의였다. 까먹지 말고,, 기록하자,, 기록만이 살길 코드 샘플 GitHub - dev-rosieposie128/stock: 재고시스템으로 알아보는 동시성이슈 해결방법 재고시스템으로 알아보는 동시성이슈 해결방법. Contribute to dev-rosieposie128/stock development by creating an account on GitHub. github.com 개발 환경 Intellij java 11 ..
시작하기 전 ... 이전 포스팅에서는 스레드 라이프 사이클 - 상태에 대해서 다뤘다. 아래 링크 참고. 그럼 이번 포스팅에서는 상태를 어떻게 제어할 것인지에 대해 다룰 것이다. [thread] 스레드의 라이프 사이클이란 무엇인가 Goal 스레드의 라이프 사이클에 대해 알아본다 스레드 라이프 사이클 스레드 객체 생성 부터 종료까지의 상태이다. 스레드는 객체를 생성하고 start()메소드를 호출하면 바로 스레드 실행처럼 보 dev-rosiepoise.tistory.com Goal 스레드의 상태 제어란 무엇인지 알아본다. 주어진 시간 동안 일시 정지하는 sleep() 다른 스레드에게 실행 양보 yield() 다른 스레드의 종료를 기다리는 join() 스레드간 협업 wait(),notify(), notifyAl..
Goal 스레드의 라이프 사이클에 대해 알아본다 스레드 라이프 사이클 스레드 객체 생성 부터 종료까지의 상태이다. 스레드는 객체를 생성하고 start()메소드를 호출하면 바로 스레드 실행처럼 보이지만, 실행 대기 상태이다 실행 대기 상태란 아직 스케쥴링이 되지 않아 실행을 기다리고 있는 상태이다. 실행 대기 상태에 있는 스레드 중에서 스레드 스케쥴링으로 선택된 스레드가 비로서 cpu를 점유하고 run()메소드를 실행한다. 이때를 실행 Running 상태라고 한다. 실행 상태의 스레드는 run()메소드를 모두 실행하기 전에 스레드 스케쥴링에 의해 다시 실행 대기로 돌아갈 수 있다. 그리고 실행 대기 상태에 있는 다른 스레드가 선택되어 실행 상태가 된다. 이렇게 스레드는 실행 대기 상태와 실행 상태를 번갈아..
시작하기 전 ... 해당 포스팅은 이전 포스팅(멀티 스레드와 객체 생성)에 이어집니다 [thread] 멀티 스레드와 작업 스레드 생성 방법 Goal multi thread에 대해 알아본다 작업스레드의 생성과 실행을 해본다 Thread 클래스로부터 직접 생성 Thread 하위 클래스로부터 생성 Thread 이름 multi-thread 란 ? 프로세스와 스레드 프로세스란, 운영체 dev-rosiepoise.tistory.com Goal 스레드 우선순위에 대해 알아본다 스레드 동기화를 하는 이유를 이해한다. 스레드의 우선순위 멀티 스레드는 동시성 또는 병렬성으로 실행된다. 동시성은 멀티 작업을 위해 하나의 코어에서 멀티 스레드가 번갈아가며 실행하는 성질을 말하며, 병렬성은 멀티 작업을 위해 멀티 코어에서 개별..
Goal multi thread에 대해 알아본다 작업스레드의 생성과 실행을 해본다 Thread 클래스로부터 직접 생성 Thread 하위 클래스로부터 생성 Thread 이름 multi-thread 란 ? 프로세스와 스레드 프로세스란, 운영체제에서 실행 중인 하나의 어플리케이션을 말한다. 사용자가 어플리케이션을 실행하면 운영체제로부터 실행에 필요한 메모리를 할당받아 어플리케이션의 코드를 실행한다. 하나의 어플리케이션은 다중 프로세스를 만들기도 한다 ex) 크롬 브라우저 두개 실행 - 크롬 프로세스 2개 생성 멀티 프로세스가 어플리케이션 단위의 멀티 태스킹 운영체제로 부터 할당 받은 자신의 메모리를 사용하기에, 서로 독립적이다. 즉, 하나의 프로세스에서 오류가 발생해도 다른 프로세스에 영향을 끼치지 않는다. ..
Goal enum 대해 알아본다 enum 메모리 저장방식 enum 내부 동작원리 enum 객체의 메소드 enum 필드 enum 이란 ? enum은 서로 관련있는 상수들을 하나의 그룹으로 묶어서 사용하는 자료형이다. 예로, 계절에 대한 데이터는 봄, 여름, 가을, 겨울이라는 네 개의 값만을 가진다. 이와 같이 한정된 값만을 갖는 데이터 타입이 열거타입이다. public enum Week { MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY, SUNDAY } enum을 사용하는 이유 enum을 사용하면 상수들을 의미 있는 이름으로 사용할 수 있고, 의도하지 않은 값의 입력을 방지할 수 있다. 또한, 코드의 가독성을 높일 수 있다. 열거 타입과 열거 상수 pub..
시작하기 전 ...string에서 equals()은 단순 값(문자열) 비교로만 알고 있다가, 얼마나 또 생각없이 개발했는지 알게되었다 (부끄) 그래서 다시 정리를 차근 차근 해보고자 한다.Goalequals()에 대해 알아본다hashcode()에 대해 알아본다toString()에 대해 알아본다equals()를 재정의할 때, hashcode(), toString()도 같이 재정의 해야하는 이유 equals()와 hashcode() equals()와 hashcode()는 최상위 클래스인 Object 클래스에 정의되어 있다. final로 되어있지 않기 때문에 하위 클래스에서 재정의 할 수 있다. 참고 https://dev-rosiepoise.tistory.com/111 [java] java.lang, java..
Goal java.lang 패키지에 대해 알아본다 java.util 패키지에 대해 알아본다 Object 클래스에 대해 알아본다 java.lang 패키지란? 자바 프로그램의 기본적인 클래스(인터페이스, 클래스, enum, exception, error, annotion)를 담고 있는 패키지로 java.lang 패키지 안에 있는 클래스와 인터페이스는 import 없이 사용 가능하다. 참고 https://docs.oracle.com/javase/8/docs/api/java/lang/package-summary.html java.lang (Java Platform SE 8 ) Interface Summary Interface Description Appendable An object to which char s..
dev_rosieposie
'Java' 태그의 글 목록