«locks» 태그된 질문

5
스핀 락은 폴링과 어떻게 다릅니 까?
스핀 락과 폴링은 같은 것입니까? 위키 백과 : spinlock은 잠금을 사용할 수 있는지 반복적으로 확인하면서 스레드를 획득하려고 시도하는 스레드가 단순히 루프 ( "스핀")에서 대기하도록하는 잠금입니다. 이것은 다음과 같이 끔찍하게 들립니다. while(!ready); 나는 그것이 최적의 차선책 이었기 때문에 가능할 때마다 폴링을 피하도록 배웠다. 그렇다면 spinlock은 오래된 오래된 폴링의 멋진 이름입니까? 스핀 …
41 locks  kernel  polling 

5
불변성이 다중 프로세서 프로그래밍에서 잠금의 필요성을 완전히 제거합니까?
1 부 분명히 불변성 은 다중 프로세서 프로그래밍에서 잠금의 필요성을 최소화 하지만 불필요 함만으로는 불충분 한 경우가 있습니까? 대부분의 프로그램이 실제로 무언가를해야하기 (데이터 저장소 업데이트, 보고서 생성, 예외 발생 등)하기 전에 처리를 지연하고 상태를 캡슐화 할 수있는 것 같습니다. 이러한 조치를 항상 잠금없이 수행 할 수 있습니까? 원본을 변경하는 대신 …

3
lock 문 안에 얼마나 많은 작업을해야합니까?
타사 솔루션에서 데이터를 받아 데이터베이스에 저장 한 다음 다른 타사 솔루션에서 사용할 데이터를 조정하는 소프트웨어 업데이트를 작성하는 중급 개발자입니다. 우리의 소프트웨어는 Windows 서비스로 실행됩니다. 이전 버전의 코드를 보면 다음과 같습니다. static Object _workerLocker = new object(); static int _runningWorkers = 0; int MaxSimultaneousThreads = 5; foreach(int SomeObject in ListOfObjects) { …
27 c#  .net  concurrency  locks 

4
잠금에서 경쟁 조건을 방지하는 것은 무엇입니까?
데이터 레이스의 기본 사항과 잠금 / 뮤텍스 / 세마포어가 어떻게 데이터 레이스를 방지하는 데 도움이되는지 이해합니다. 그러나 잠금 장치 자체에 "경쟁 상태"가있는 경우 어떻게됩니까? 예를 들어, 동일한 응용 프로그램에 있지만 다른 프로세서에서 실행중인 두 개의 다른 스레드 는 정확히 동시에 잠금을 획득하려고합니다 . 그러면 어떻게됩니까? 이를 방지하기 위해 무엇을해야합니까? 불가능한가, …

6
전자 상거래 웹 사이트에서 동시성을 바구니로 관리하는 가장 좋은 방법
두 고객이 동시에 재고가 1 인 제품을 추가하는 경우를 관리하는 가장 좋은 방법은 무엇입니까? 이 두 고객 중 한 명이 동일한 제품을 추가하지 않도록 바구니 코드를 확인해야합니까? 또는 예를 들어 관련 제품이 아직 재고가 있는지 확인하기위한 두 번째 쿼리 (동시 고객이 아직 구매하지 않은 의미)를 수행 할 때 지불 단계에서이 …

1
모범 사례는 폴링하지 않는 것이지만 스레드가 wait ()를 호출 할 때 내부적으로 폴링이 발생하지 않습니까?
다른 스레드가 작업을 완료했을 때 확인하려는 스레드가 있다고 가정 해보십시오. 다른 스레드가 완료되었다는 알림을받을 때 까지이 스레드를 대기시키는 wait () 유형 함수를 호출해야한다는 것을 읽었습니다. 그리고 이것은 값 비싼 폴링을 수행하지 않음을 의미하기 때문에 좋습니다. 그러나 내부적으로 더 낮은 레벨에서 폴링이 발생하지 않습니까? 즉, 스레드를 wait ()로 만들면 다른 스레드가 …

2
Akka가 동시성에 적합한 이유는 무엇입니까?
나는 Akka와 배우 프레임 워크를 처음 사용합니다-분명한 것이 빠져 있다고 확신합니다. 사전에 사과하십시오. Akka를 선택하는 주요 요점 중 하나가 동시성을 관리하는 방법이라는 것을 계속 읽습니다. Akka가 왜 그렇게 특별한 지 분명하지 않습니다. 나는 매우 가볍고 빠른 많은 배우들이 있다는 것을 알고 있습니다. 그러나 두 명의 사용자가 동시에 양식을 저장할 때 …

4
PHP file_put_contents 파일 잠금
Senario : 각 줄에 문자열 (평균 문장 가치)이있는 파일이 있습니다. 인수의 경우이 파일의 크기가 1Mb (수천 줄)라고 말할 수 있습니다. 파일을 읽고, 문서 내에서 일부 문자열을 변경하고 (일부 추가 및 제거 및 수정) 스크립트를 사용하여 모든 데이터를 새 데이터로 덮어 씁니다. 질문 : '서버'PHP, OS 또는 httpd 등이 이미 이와 …
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.