È necessario ottenere sempre il DDL anche se le tabelle non sono state modificate? Altrimenti ottieni solo il DDL di quelle tabelle in cui ALL_OBJECTS.LAST_DDL_TIME è cambiato dall'ultima volta che lo hai recuperato.
Un'altra opzione sarebbe quella di scrivere il tuo GET_DDL in un modo che sia in grado di ottenere più di una tabella contemporaneamente.