У меня есть сложное большое многопоточное приложение, в которое я добавляю новую функциональность.
Я добавил вызов к специализированному оборудованию (через JNI lib, предоставленную поставщиком). Однако перед вызовом этой (очень быстрой) функции предварительно выполняется некоторая работа по заполнению структуры данных, отправленной ей.
Однако профиль GC приложения очень изменчивый/плохой, и кажется, что некоторые из этих шагов заполнения прерываются GC. Это важно, потому что время должно поддерживаться постоянным или как можно более постоянным между первым из этих событий и передачей аппаратного ресурса.
Есть ли способ сказать «синхронизировать для GC» эти операции, чтобы они не задерживались во время остановки мирового GC?
Использование 64-битного JDK 1.7 на RHL5.5
Спасибо