Вопрос

Есть ли способ выполнять неблокирующие действия на интерфейсе 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, делать асинхронные действия. Вы RUBLE TOTES, вопреки JavaScript, к которому вы, кажется, называетесь.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top