readwritelock

    0

    1답변

    목록 (또는 다른 데이터 구조)의 여러 스레드에서 검색을 허용하지만 목록 검색 및 인터리브에서 다른 스레드의 목록 편집을 방지하는 좋은 방법은 무엇입니까? 검색 및 편집 메서드에서 동기화 된 블록을 사용하여 시도했지만 여러 스레드에서 검색을 실행할 때 불필요한 차단이 발생할 수 있습니다. 편집 : ReadWriteLock은 내가 찾고있는 것입니다! 감사.

    1

    1답변

    나는 List을 여러 번 읽고 여러 번 쓰지만 거의 업데이트되지는 않습니다 (읽기 횟수가 50,000 배 이상 많습니다). 편집 : 사실, 배열이 목록 대신 충분한 경우이 충분합니다. 목록이 업데이트되면 단순히 다른 버전으로 바뀝니다 (add() 또는 remove() 호출이 없음). CopyOnWriteArrayList 동기화 된 목록의 단점을 피할 수 있

    3

    1답변

    ReaderWriterLockSlim을 사용하는 코드가 있습니다. 특정 객체가 생성 될 때 쓰기 잠금을 획득하고 잠시 후에 해당 객체가 삭제 될 때 해제합니다. 그러나 이러한 호출이 어디에서 발생했는지, 나는 그들이 ReaderWriterLockSlim의 요구 사항 인 동일한 스레드에 있다는 것을 보장 할 수 없습니다. 합리적인 해결책은 전용 스레드에서 개

    1

    1답변

    POSIX 세마포어를 사용하여 C에서 스레드 안전 읽기/쓰기 잠금을 쓰려고합니다. 소스 코드 here의 현재 상태를 볼 수 있습니다. 독자가 선호하는 자물쇠를 만들기 위해 this을 추적했습니다. 문제는 내가 rwl_destroy()가 호출 될 때있을 수있는 가능한 상태에 대한 잠금의 파괴를 처리하고자하는 것입니다. 만약 파괴 호출하고 다른 스레드가 다음

    0

    1답변

    안녕하세요, 저는 Java에서 ReadWriteLock에 대해 읽었지만, 그 중 재진입 부분을 파악한 것은 확실하지 않습니다. 여기 가 재입국에게 public class Locks { public static void main(String[] args) { ReadWriteLock lock = new ReentrantReadWriteLo

    0

    1답변

    많은 자습서에서 ReWriteLock의 재진입 불가능한 구현에서 나타났습니다. public class ReadWriteLock{ private int readers = 0; private int writers = 0; private int writeRequests = 0; public synchronized voi

    3

    1답변

    내 질문 - 은 동시에 MongoDB에 읽고 쓸 수있는 방법이 있습니까? 아니면 MongoDB 리더를 욕심 내게 만드시겠습니까? 데이터베이스 용 MongoDB를 사용하는 웹 응용 프로그램이 있습니다. 내 응용 프로그램에서는 듣고있는 직렬 이벤트가 있습니다. 이 직렬 이벤트에서 이벤트를 처리 할 새 스레드를 만듭니다. 스레드에서 serial의 문자열이 구문

    0

    1답변

    저는 Clozure CL을 사용하여 앱을 작성하고 있습니다. 응용 프로그램에서 여러 파일을 작성해야하므로 각 파일에 대해 읽기/쓰기 잠금을 만들었습니다. 이제 종료 함수를 작성하려고합니다. 모든 파일 쓰기가 완료되었는지 확인한 다음 종료합니다. 기본적으로는 다음과 같이 작동합니다 : 잡아 모든 파일 읽기 - 쓰기 잠금 은 CCL 내가 Clozure CL d

    2

    1답변

    필자는 쓰기 권한을 독점적으로 잠그고 읽기를 위해 병렬 액세스를 사용하려는 데이터 구조를 사용합니다. 일부 검색을 수행하여 ReadWriteLock과 ReentrantReadWriteLock - 두 가지 모두 읽기 잠금과 쓰기 잠금을 제공합니다. 나는 그들 사이의 차이점을 이해하지 못했습니다. 누군가 설명해 주시겠습니까? 내 질문에 대한 어리석은 느끼고

    1

    1답변

    라이브러리 pthread.h은 pthread_rwlock_t FIFO입니까? 다음 예에서는 다중 스레드가 있습니다. 모든 스레드가 순서대로 실행되는 것을 보장한다고 상상해보십시오. // Thread 1 - does a write lock pthread_rwlock_wrlock(&lock); // Thread 2 - does a read but has