producer-consumer

    6

    2답변

    특정 유형의 개체가 있다는 점을 제외하고는 제작자/고객 대기열이 있습니다. 따라서 어떤 소비자도 추가 된 객체를 소비 할 수 없습니다. 너무 많은 경우 각 유형별로 특정 대기열을 만들고 싶지 않습니다. (이것은 일종의 생산자/소비자 정의를 확장하지만 정확한 용어가 무엇인지는 확실하지 않습니다.) 매개 변수가있는 펄스를 허용하는 EventWaitHandle과

    1

    2답변

    웹 서비스를위한 비교적 간단한 "프록시"응용 프로그램을 작성하고 있습니다. 일반적으로 TCP 서버 (비동기 연결)는 클라이언트에서 데이터를 읽고 (문자열) 읽고 해당 콜백 함수의 일부로 두 대기열 (Q1 및 Q2) 중 하나에 데이터를 저장합니다. 다른 스레드는이 대기열의 데이터를 읽고이를 웹 서비스에 전달합니다. Q1의 데이터는 Q2의 데이터보다 우선해야합

    19

    2답변

    대기열에 항목이 없으면 ConcurrentQueue의 TryDequeue가 false를 반환합니다. 대기열이 비어 있으면 대기열에 새 항목이 추가 될 때까지 기다릴 것이고 새 대기열을 대기열에서 제거하고 그 과정이 계속 진행될 필요가 있습니다. 내가 monitor.enter를 사용하는 경우, 잠깐 펄스 또는 C# 4.0

    0

    2답변

    우리는 RabbitMQ를 사용하여 한 컴퓨터의 생산자에서 여러 컴퓨터에 분산 된 소규모 소비자 그룹으로 작업을 보냅니다. 생산자가 작업을 생성하여 대기열에 배치하고 소비자가 대기열을 10ms마다 확인하여 청구되지 않은 작업이 있는지 확인하고 작업을 사용할 수있는 경우 한 번에 작업을 가져옵니다. 한 특정 작업자가 작업을 처리하는 데 너무 오래 걸리면 (GC

    1

    1답변

    나는 파일을 생산하여 소비자가 다른 파일에 쓰고 있는데, 입력 파일을 제작자가 읽을 때 세마포어 중 하나를 닫아야하고 소비자는 더 이상 생산자가 삽입을 기다리지 않는다. 일부 새로운 입력 버퍼. 그것을 할 방법이 있습니까? 감사합니다 ...

    9

    4답변

    다중 스레드 응용 프로그램을 개발해야합니다. 여러 스레드가있을 경우 각 스레드는 사용자 지정 이벤트 로그를 생성하고 저장해야합니다 (microsoft MSMQ가 아닌). 대기열에서 로그 데이터를 읽고 로그 정보를 파일에 저장하는 특정 정보로 조작하는 또 다른 스레드가 있습니다. 기본적으로 여기서는 여러 개의 단일 생산자 패러다임을 구현합니다. 어떤 몸이라도

    2

    1답변

    Twisted Python을 사용하여 Redis 위에 키/값 데이터를 저장하는 서버를 구축하고 있습니다. 서버는 HTTP를 통해 JSON 사전을받습니다.이 사전은 파이썬 사전으로 변환되어 버퍼에 저장됩니다. 새로운 데이터가 저장 될 때마다 서버는 버퍼에서 한 사전을 팝하는 작업을 예약하고 txredis 클라이언트를 사용하여 모든 튜플을 Redis 인스턴스에

    0

    1답변

    저는 제작자/소비자 모델로 해석 될 수있는 cuda 프로그램을 작성하고 있습니다. 두 개의 커널, 이 장치 메모리에 데이터를 생성하며, 이고 다른 커널은 생성 된 데이터입니다. comsuming 스레드의 수는 워프 크기 인 32의 배수 2로 설정됩니다. 각 워프는 32 개의 데이터가 생성 될 때까지 대기합니다. 여기에 몇 가지 문제가 있습니다. 소비자 커널

    0

    1답변

    문제는 내가 스레드 A와 n 작업을해야한다는 것입니다. 스레드 A는이 작업이 완전히 끝날 때까지 기다려야합니다. 내 생각은 n 카운트로 CountDownLatch을 사용하고 생산자/소비자 패턴을 사용하여 작업자를 제어합니다. AtomicInteger을 카운터로 사용합니다. 생산자가 카운터 값이 0보다 큰지 확인한 다음 BlockingQueue에 신호를 입력

    0

    1답변

    내가 가진이 같은 상황 : 하나 개의 단일 생산자는 많은 DB 쿼리를 실행 - 결과를 메시지로 보내 단일 소비자의 큐에 도착하는 (메시지가 더와 함께 도착하지 특별 주문) 단일 소비자는 이러한 메시지를 읽고 모든 메시지가 도착한 경우에만 메시지 처리를 시작하려고합니다. 이런 종류의 문제를 해결하는 가장 좋은 방법은 무엇입니까? 감사합니다.