2011-01-28 2 views

답변

2

읽기는 스레드로부터 안전합니다. nID에 글을 쓸 경우 문제가됩니다.

0

아무 것도 수정하지 않습니다. thread가 안전 할까 thread가 안전하지 않은가?

+0

죄송합니다. 값을 변경할 수있는 스레드 안전 멤버 함수가 있다고 가정합니다. – bl23

+1

@ bl23 :이 경우 읽기 스레드가 부실 값을 캐시하지 않도록'_nID'를'휘발성 '으로 표시 할 수 있습니다. – LukeH

+1

@ bl23 : 당신의 가정은 당신 자신의 질문을 요구합니다. 독자 중 하나가 아닌 경우 쓰기가 "스레드 안전"이라고 말하는 것은 완전히 의미가 없습니다. 스레드 안전성은 개별 시스템이 아닌 * 전체 시스템 *의 속성입니다. "스레드 안전성"이 무엇을 의미하는지 명확하게 정의 할 수 있습니까? –

3

"스레드 안전성"의 의미에 따라 다릅니다. 예를 들어, "thread safe"에 의해 "이 변수에 대한 모든 쓰기가 모든 스레드에서 일관된 순서대로 발생하는 것을 보장"한 다음 "스레드 안전"이 아님을 의미합니다. "이 변수의 테스트와 세트가 단일 스레드 데이터 종속성 규칙과 일관된 결과를 제공하도록 보장된다"는 의미 일 경우 "스레드 안전성"이 전혀 아닙니다.

"스레드 안전성"이 무엇을 의미하는지주의 깊게 정의하고 모든 작성자와 독자 및 작성자에게 데이터 종속성이있는 모든 코드를 표시 한 다음 의미있는 의견을 제공 할 수 있습니다. 이 질문에 의미있는 질문에 대한 답변을 시작하기에 충분한 정보가 충분하지 않습니다.