Java Firebase: retrasar la salida hasta que finalicen las escrituras

Tengo un servidor escrito en Java que puede recibir una señal de apagado mientras escucha, procesa y actualiza los datos de Firebase. Dado que los subprocesos de Firebase son subprocesos de demonio en Java, quería agregar algo de retraso al subproceso principal para permitir que se completen las operaciones de escritura.

Mi idea actual es el enfoque de bloqueo: use algún contador concurrente para rastrear las operaciones de escritura pendientes y deje que el hilo principal salga cuando no haya ninguno. El contador se actualizaría enonComplete() devoluciones de llamada, así que me preguntaba:

En el cliente Firebase, cuando podríaonComplete() las devoluciones de llamada nunca se llaman? ¿Existe un peligro razonable de punto muerto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta