В дополнение к ответу Сандипа Лакдавалы, так как эти две операции должны следовать друг за другом ( id должен быть сначала возвращен пользователю, затем операция должна продолжаться ie), вам следует рассмотреть возможность планирования своих различных потоки. Как правило, компьютеры произвольно отдают время часам.
Например, если у нас есть поток t1 и поток t2, и эти t1 выводят «hey» на консоль, а t2 выводит «wow!» на консоли, когда вы запускаете вашу программу, вы можете увидеть одно из следующих в вашей консоли:
эй, эй, эй, вау! вау!
или
вау! эй, эй, вау! вау!
Поэтому, чтобы достичь своей цели, вам нужно поискать синхронизация потоков . Также вы можете посетить сайт "https://www.baeldung.com/java-thread-safety", чтобы узнать о синхронизации потоков в Java.
Кроме того, перед выполнением этой задачи я бы посоветовал вам прочитать о потоках и процессах, поскольку они являются очень важными темами информатики. « В чем разница между процессом и потоком? » будет хорошей отправной точкой.