Могут ли Berkeley DB быть асинхронно в Java?
-
11-12-2019 - |
Вопрос
Есть ли способ выполнять неблокирующие действия на интерфейсе Java Berkeley DB и получить статус и результат действия, используя будущее или что-то подобное (например, получить результат Callable, используя будущее)?
.Я не хочу, чтобы нить вызывала БД, чтобы быть заблокированным, пока действие DB не будет сделано.
Решение
Из того, что я видел в документации API, Беркли БД JE не имеет асинхронного API.Каждый звонок к БД заблокирует вызов, пока действие не будет выполнено.
Другие советы
Да, вы можете сделать это, как с любой БД или ресурсом, просто создавая нить и начать его.
Runnable r = new Runnable() {
public void run() {
// call the DB
// call your callback to run other tasks after with the result
}
};
new Thread(r).start();
.
Это стандартный способ, в Java, делать асинхронные действия.
Не связан с StackOverflow