프로그래밍 잘 몰라서 나도 자신 없는데.. Lock 걸어야하지 않나?
걸어야될 거 같은데;
더티리드, 팬텀리드 같은 문제 생길 때를 대비해서.. 락 걸어놔야한다고 생각하는데 ..
DB관점으로 보면 a가 쓰기 할때는 베타적 락킹 해줘야함 읽기는 딱히 상관 없음
아 근데 쓰기 충돌 일어날 일은 없구나 목적이 뭐냐에 따라서 락 안해줘도 될듯...?
학교에서 한 놈이라도 데이터 수정을 한다면 락 필요하댓어요
안해도댐 - dc App
읽거나 '쓰고' 하는 애랑 읽는 애랑 둘이 있으면 쓰는 쓰기 전 데이터 or 쓰고 난 뒤 데이터 뭘 가져와야 맞음?
아.. 조회 시점의 커밋된 데이터를 가져오는 거니까 쓰고 난 뒤의 데이터를 가져오겠네요.
cpu 인더스트럭션과, volatile 여부 따라 다릅니다
보통 32비트이고, volatile 되어 있다면 필요없어요
32비트 이상
16비트면?
16비트면 32비트 int 기준으로 16비트 읽고, 16비트 읽으면서 16비트 쓰고 16비트 읽고, 16비트 읽고 16비트 쓰고 이지랄 날 수 있어요
두 번 나눠서 읽으면 그럴 수 있겠네
정 산경쓰인다면 atomic과 interlocked 같은 것도 있어요
상식적으로 생각해봐라 - hrin
프로그래밍 잘 몰라서 나도 자신 없는데.. Lock 걸어야하지 않나?
걸어야될 거 같은데;
더티리드, 팬텀리드 같은 문제 생길 때를 대비해서.. 락 걸어놔야한다고 생각하는데 ..
DB관점으로 보면 a가 쓰기 할때는 베타적 락킹 해줘야함 읽기는 딱히 상관 없음
아 근데 쓰기 충돌 일어날 일은 없구나 목적이 뭐냐에 따라서 락 안해줘도 될듯...?
학교에서 한 놈이라도 데이터 수정을 한다면 락 필요하댓어요
안해도댐 - dc App
읽거나 '쓰고' 하는 애랑 읽는 애랑 둘이 있으면 쓰는 쓰기 전 데이터 or 쓰고 난 뒤 데이터 뭘 가져와야 맞음?
아.. 조회 시점의 커밋된 데이터를 가져오는 거니까 쓰고 난 뒤의 데이터를 가져오겠네요.
cpu 인더스트럭션과, volatile 여부 따라 다릅니다
보통 32비트이고, volatile 되어 있다면 필요없어요
32비트 이상
16비트면?
16비트면 32비트 int 기준으로 16비트 읽고, 16비트 읽으면서 16비트 쓰고 16비트 읽고, 16비트 읽고 16비트 쓰고 이지랄 날 수 있어요
두 번 나눠서 읽으면 그럴 수 있겠네
정 산경쓰인다면 atomic과 interlocked 같은 것도 있어요
상식적으로 생각해봐라 - hrin