es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Tag: JAVA.UTIL.CONCURRENT

Llamada REST asincrónica de DynamoDB

Me gustaría realizar una llamada REST asincrónica a DynamoDB utilizando CompletableFuture, y se proporciona el siguiente método: private CompletableFuture<updateitemresult> updateDynamodbAsync(UpdateItemRequest request) { return CompletableFuture.supplyAsync(() -> { UpdateItemResult result = amazonDynamoDBClient.updateItem(request); return result; }); } A continuación, se muestra la ejecución del código: UpdateItemResult result = null; CompletableFuture<updateitemresult> updateItemResultCompletableFuture = updateDynamodbAsync(updateItemRequest); . . . Read more

Inicie la ejecución si aún no está en progreso, de lo contrario, espere a que la ejecución existente termine en la llamada concurrente del método Java.

Imagina que tengo una clase cuyo método (proceso) puede ser llamado concurrentemente. Este método realiza un procesamiento (hacerProceso) que no puede ser ejecutado concurrentemente. Además, si se llama al método proceso, pero el procesamiento (hacerProceso) ya está en progreso, la invocación del método proceso debe esperar hasta que el procesamiento . . . Read more

¿Cómo ejecutar código después de que todas las threads hayan terminado su ejecución?

private void processEvents(Listevents) { CompletableFuture<void> completableFuture = CompletableFuture.runAsync( () -> processEventsAsynchronously(events)); while (!completableFuture.isDone() || completableFuture.isCancelled() || completableFuture.isCompletedExceptionally()) { // esperar a que todos los hilos se procesen } if (completableFuture.isDone() || completableFuture.isCancelled() || completableFuture.isCompletedExceptionally()) { executeRemainingFlow(); } } private void processEventsAsynchronously(Listevents) { Executor executor = Executors.newFixedThreadPool(5); for (Object event : . . . Read more