이 둘의 개념이 매우 혼동스럽다.
한국어로 둘다 단어가 비슷한 것도 한 몫을 한다.
영어단어로 기억을 하면 헷갈리지 않을 것이다.
이번 페이지에서는 이 둘의 차이점을 알아 보자
동시성(Concurrency)
트랜잭션 A와 B가 있다고 하자.
이 둘은 동시에 실행이 된다고 하자!!
이렇게 2개 이상의 작업들이 동시에 실행되는 것을 동시성(concurrency) Problem이라고 한다.
동시성 문제의 핵심은,
비록 동시에 실행이 되더라고 마치 하나하나 독립적으로 실행한 것과 같은 결과를 내게 하는 것이다.
동기화(Synchronization)
같은 데이터를 가지고 무언가를 실행을 하는 것!
ex1) 트랜잭션 동기화-> 같은 커넥션을 사용하기 위하여, 각 메서드에 Connection객체를 매개 변수로 일일이 넣음으서
같은 커넥션을 사용하여 동기화 실현!!!ex2) 로그 추적기 구현 시!-> TransactionId 값을 매개변수로 전달을 함으로써, 호출되는 모든 내부 메서드들이 똑같은 하나의 TransactionId를 전달 받고, 깊이(Level)도 계층에 따라 표현할 수 있는 것임
'CS 잡지식' 카테고리의 다른 글
객체의 속성 값(필드값)을 변경 시 주의해야 할 사항~~~!!! (0) | 2023.02.20 |
---|---|
멀티 쓰레딩 상황에서 생길 수 있는 심각한 동시성(Concurrency issue)에 대한 고찰!! ( 면접에서 매우 고급 문제로서 잘 나옴 ) (0) | 2023.02.20 |
HTML vs CSS (0) | 2023.02.18 |
HTML, CSS, Java Script에 대한 고찰! (0) | 2023.02.18 |
예외는 2가지 측면에서 생각! (0) | 2023.02.13 |