어떻게 원자적인 방법으로 코드를 스레드로부터 안전하게 할 수 있습니까?원자 방법의 용도는 무엇입니까?
-2
A
답변
1
concurrency and locking in Java에서 조금 읽을 수 있습니다. 또한이 다른 SO 스레드를 Java memory model/concurrency에서 확인하십시오.
1
원자 연산은 전혀 중단 할 수없는 연산입니다.
일반적인 동기화 문제는 동기화 메커니즘에 의해 보호되지 않는 데이터 구조를 한 스레드가 업데이트 할 때 발생합니다. 따라서 값이 다른 스레드에 의해 발밑에서 변경되기 때문에 스레드는 부실하거나 일치하지 않는 값을 읽을 수 있습니다.
이 문제를 방지하는 메커니즘은 데이터 구조에 대한 액세스를 동기화하는 것이므로 순서를 지정하고 다른 스레드가 액세스하기 전에 단일 스레드가 데이터 구조의 사용을 완료하도록합니다.
작동 할 수있는 이러한 동기화 메커니즘은 작동하는 동안 자체적으로 CPU에서 예약 할 수 없도록해야합니다. 작동하지 않으면 스레드가 예상치 못한 경우 스레드가 구조를 업데이트 할 수 있기 때문입니다.
이러한 메커니즘은 작동을 보장하기 위해 이러한 원자 적 작업과 관련하여 구현됩니다. 예를 들어, semaphores은 원자 증가 및 '테스트 및 감소'연산자를 사용합니다.
이 항목은 대개 주제가 '분산 시스템'으로 다루어지며,이 용어는 동시성을 이해하는 데 도움이되는 리소스가 될 수 있습니다.
관련 문제
- 1. 원자 저장소 유형이란 무엇입니까?
- 2. SO_REUSEADDR의 용도는 무엇입니까?
- 3. raisePropertyChanged 이벤트의 용도는 무엇입니까?
- 4. 인터페이스에서 속성의 용도는 무엇입니까?
- 5. 이 입력란의 용도는 무엇입니까?
- 6. _fread_nolock, _fseek_nolock의 용도는 무엇입니까?
- 7. 크로스 가입의 용도는 무엇입니까?
- 8. $$ jQuery에서이 용도는 무엇입니까?
- 9. Ackermann 함수의 용도는 무엇입니까?
- 10. 투명의 용도는 무엇입니까?
- 11. Silverlight.js 파일의 용도는 무엇입니까?
- 12. JavaFX 스크립트의 용도는 무엇입니까?
- 13. Joomla의 용도는 무엇입니까?
- 14. 코드의 용도는 무엇입니까?
- 15. TelephoneNumberUtil 클래스의 용도는 무엇입니까?
- 16. System.Transactions의 실용적인 용도는 무엇입니까?
- 17. 9patch PNG의 용도는 무엇입니까?
- 18. MarshalByRefObject의 주요 용도는 무엇입니까?
- 19. jbossall-client.jar의 용도는 무엇입니까?
- 20. aligned_storage의 기본 용도는 무엇입니까?
- 21. * .pro 파일의 용도는 무엇입니까?
- 22. Log4j API의 용도는 무엇입니까?
- 23. mongo.lock 파일의 용도는 무엇입니까?
- 24. feholdexcept 등의 용도는 무엇입니까?
- 25. .DDF 파일의 용도는 무엇입니까?
- 26. SPHttpUtility.NoEncode 메서드의 용도는 무엇입니까?
- 27. 커밋 메시지의 용도는 무엇입니까?
- 28. synchronized 키워드의 용도는 무엇입니까?
- 29. JavaScript의 용도는 무엇입니까?
- 30. 메이크 파일의 용도는 무엇입니까?
질문을 조금 더 명확히하기를 원할지도 모릅니다. "원자력 방식"은 매우 구체적이거나 명확하지 않습니다. –
이것은 매우 자세하고 이해하기 어려운 질문입니다. "원자력 방식"이란 무엇입니까? 아마 원자 방법을 의미할까요? 또는 동기화 된 방법? –