Застрял процесс Java (JDK 1,8) - PullRequest
0 голосов
/ 28 июня 2018

Я создал простой Java-демон. Это настолько глупо, насколько это возможно - получить некоторую информацию из базы данных и отправить ее на общий ресурс Samba

Как это выглядит:

while (true) {
   do_some_database_job(connection_pool.getCnx())
   do_some_preprocessing
   Thread.sleep(schedule_interval);
}

Однако после нескольких итераций он застревает.

Я проверял процесс JVM с помощью strace, и последняя запись была такой:

futex(<a_hex_address>, FUTEX_WAIT, <jvm_pid+some_number>, NULL)

Так что я подозреваю, что это тупик, но почему это так? Я запускаю только один поток.
Я использую dbcp2 для пула соединений и входа в систему.

Экспериментировал на Win7 / RHEL7, jdk1.8 / jdk10

...