Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

378
Visualizações
Subprocesamiento múltiple de Java: ¿una buena manera de notificar a los subprocesos de consumo que todos los subprocesos de productor han terminado?

Estoy trabajando en un escenario de productor/consumidor bastante simple: tengo algunos subprocesos que entregan datos a un monitor y otros subprocesos que esperan datos en el monitor, los eliminan y entregan los datos a otro monitor. En un momento determinado, los productores habrán entregado todos sus últimos datos al monitor. Después de que los consumidores hayan consumido los últimos datos del monitor, se les debe indicar que no esperen más datos del monitor. Para que esto funcione como debería, los subprocesos del consumidor deben recibir una notificación cuando el último subproceso del productor haya producido su último bit de datos y no haya más datos vencidos. Estoy seguro de que hay varias maneras de hacer esto. A partir de ahora, el monitor cuenta el número de subprocesos de producción activos y, cuando finaliza un subproceso de producción, se lo indica al monitor. Tengo mucha curiosidad, aunque cuál sería el enfoque más elegante para esto.

over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Una solución simple es dejar que cada productor envíe una poison pill donde el consumidor llevaría un recuento de las píldoras venenosas recibidas hasta el momento y las compararía con el número de productores.

 class Consumer{ final int numOfProducers; int poisonPillsReceived; void run(){ while(true){ Object obj = queue.poll(); if(isPoisonPill(obj)){ poisonPillsReceived++; } if(numOfProducers == poisonPillsReceived){ break; }else{ .... } } } }
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda