Posts

Post contents

JAVA Volatile

JAVA Volatile

Volatile C++에도 존재하는 volatile 이라는 키워드는 변수 앞에 선언되며 CPU 캐쉬가 아닌 메모리(RAM)에서 값을 읽거나 쓰도록 설정하는 키워드이다. Java는 컴파일러 최적화를 이용해 일반적인 반복된 내용을 줄이는 경향이 있다. 또한 더 빠른 사용을 위해서 non-volatile 변수들은 캐시를 거쳐 메모리에 읽거나 쓸수도 있고...

JAVA 쓰레드 내 공유자원 ThreadLocal 알아보기

Understanding about threadLocal that can use shared resource in jAVA thread

ThreadLocal ThreadLocal은 하나의 쓰레드에서 전역으로 관리 할수 있는 변수를 담고 있는 클래스이다. ThreadLocal을 사용한다면 일일히 자식까지 파라미터로 넘겨주지 않아도 데이터를 사용 할 수 있으며 어렵지 않게 사용이 가능하다. 위처럼 쓰레드에서 전역으로 사용할 수 있는 ThreadLocal의 사용법은 간단하다. T...

Git Rebase vs Merge

Git Rebase vs Merge

Intro Git에서 다른 브랜치와 내용을 합칠때 항상 merge와 rebase로 합치는것을 고민한다. 왜냐하면 그 차이를 잘 모르고 있었기 때문이다. 단순히 merge는 merge 커밋만 남고 rebase는 이런 커밋 없이 깔끔하게 합칠수 있다는 정도만 알고 있는 수준이었다. 그래서 이러한 두 병합 방법에 대한 차이와 기능에 대해서 상세히 살펴 ...

Polling & Long Polling & Streaming

Polling & Long Polling & Streaming

Intro 웹에서는 일반적으로 클라이언트에서 서버로 요청을 보내지만, 서버에서 클라이언트에게 데이터를 전달 해 주어야 하는 상황이 발생한다. 이러한 상황에서 사용되는 기술에 대해서 알아보려고 한다. 자바스크립트에서 사용되는 Ajax 등이 대표적인 예 이다. Polling Polling은 가장 기본적으로 사용되는 기법으로, 클라이언트가 서버에 ...