
동기화(Synchronization) 하나의 객체를 두 개의 스레드가 접근하면 어떻게 될까? 왜 동기화가 중요한지에 대해서 살펴보고, 동기화를 하지 않으면 어떤 문제가 발생하는지에 대해서 살펴보자. 상한 귤 세기 예제 public class Counter { private int state = 0; public void increment() { state++; } public int get() { return state; } } for (귤 in 귤박스) { if (귤 상태 is 불량) { badCounter.increment(); } } 귤박스가 2개 있다고 가정하고 T1, T2 스레드를 사용하여 한 스레드당 하나씩 담당하게 만들었다. CPU가 싱글 코어일 때 T1, T2 스레드는 멀티태스킹 방식(다수..

I/O I/O는 input/output의 약자로, 데이터의 입출력을 의미한다. 이러한 I/O의 종류에는 일반적으로 우리가 알고 있는 file I/O, 프로세스 간의 통신을 할 때 사용되는 pipe I/O이 있다. 그리고 일반적인 디바이스(모니터, 키보드 등)에 대한 device I/O이 있고, network(Socket) I/O에 대해서는 뒤에서 자세히 살펴보자. I/O 란? 컴퓨터는 크게 2가지 역할을 수행한다고 볼 수 있는데 하나는 연산(computing)이고, 하나는 I/O 즉, 입출력을 처리하는 것이다. 컴퓨터에서 운영체제는 이러한 입출력에 대한 수행과 물리적인 입출력 장치(하드웨어)를 관리하고 컨트롤해주고 있다. 이러한 I/O 요청이 처리되는 과정을 하나씩 알아보자. 사용자 프로세스는 열고 있던..

LinkedList LinkedList란 Collection 프레임워크의 일부이며 java.util 패키지에 소속되어 있다. 이 클래스는 데이터가 연속된 위치에 저장되지 않고 모든 데이터가 데이터 영역과 주소 영역을 별도로 가지고 있스빈다. 데이터는 포인터와 주소를 사용하여 연결하고, 각 데이터는 노드라 불리며 배열에서 자주 삽입, 삭제가 이루어지는 경우 ArrayList 보다 선호된다. LinkedList의 종류와 속성 위에서 말했듯 Node는 Data를 담을 수 있는 변수와 다른 Node를 참조하는 2개의 변수로 이루어져 있다. 그리고 LinkedList는 Node의 구성에 따라 싱글 링크드리스트(Single-LinkedList), 더블 링크드리스트(Double-LinkedList)로 구분할 수 있다..
- Total
- Today
- Yesterday
- mdcfilter
- amazon subnet
- 카프카
- nginx configuration
- 트랜잭션
- spring webflux
- TDD
- postgresql
- nginx
- Java
- Synchronized
- 비관적 락
- Kafka
- mysql
- socket
- sql
- 구름톤챌린지
- 넥스트스탭
- 구름톤 챌린지
- 분산 락
- jvm 메모리 구조
- pessimistic lock
- 람다
- redis session
- spring session
- annotation
- NeXTSTEP
- transaction
- ip cidr
- webflux spring security
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |