ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • Thread Safe
    또니 개발 일기/개발 프로그래밍 2024. 2. 27. 21:42

    Thread Safe ? 

    쓰레드 안전은 멀티쓰레드 프로그래밍에서 일반적으로 어떤 함수나 변수 혹은 객체가 여러 쓰레드로부터 동시에 접근이 이루어져도 프로그램의 실행에 문제가 없다는 뜻이다.

     

    Thread-safe를 지키기 위한 방법

     

    1. Re-entrancy

    어떤 함수가 한 스레드에 의해 호출되어 실행 중일 때, 다른 스레드가 그 함수를 호출하더라도 그 결과가 각각에게 올바로 주어져야 한다.

     

    2. Thread-local storage

    공유 자원의 사용을 최대한 줄여 각각의 스레드에서만 접근 가능한 저장소들을 사용함으로써 동시 접근을 막는다.

    이 방식은 동기화 방법과 관련되어 있고, 또한 공유상태를 피할 수 없을 때 사용하는 방식이다.

     

    3. Mutual exclusion

    공유 자원을 꼭 사용해야 할 경우 해당 자원의 접근을 세마포어 등의 락으로 통제한다.

     

    4. Atomic operations

    공유 자원에 접근할 원자 연산을 이용하거나 '원자적'으로 정의된 접근 방법을 사용함으로써 상호 배제를 구현할 있다.

     


    '또니 개발 일기 > 개발 프로그래밍' 카테고리의 다른 글

    Spring AOP 란 ?  (1) 2024.02.27
    트랜잭션 사용 시 주의점  (0) 2024.02.27
    JPA N+1 문제 해결방안  (0) 2024.02.27
    JDK 1.7과 JDK 1.8 차이점  (0) 2024.02.27
    JPA / Hibernate / ORM 이란?  (0) 2024.02.27

    댓글

Designed by Tistory.