Блокировка нескольких экземпляров JVM?JAVA

Программисты JAVA общаются здесь
Anonymous
Блокировка нескольких экземпляров JVM?

Сообщение Anonymous »

Это немного связано с этим вопросом.
Я использую make для извлечения некоторой информации, касающейся некоторых программ на C. Я завершаю компиляцию с помощью сценария Bash, который запускает мою программу Java, а затем gcc. По сути, я делаю:

Код: Выделить всё

make CC=~/my_script.sh
Я хотел бы использовать несколько заданий (опция -j в команде make). Он запускает несколько процессов в соответствии с правилами зависимостей.
Если бы я хорошо понял, у меня было бы столько же экземпляров JVM, сколько и заданий, верно?
Дело в том, что я использую sqlite-jdb для сбора некоторой информации. Таким образом, проблема заключается в том, как избежать одновременной попытки нескольких процессов изменить базу данных.
Похоже, что блокировка SQLite зависит от JVM (я имею в виду, что одну блокировку можно «видеть» только внутри блокирующей JVM), и это то же самое для RandomAccessFile.lock().
У вас есть идеи, как это сделать? (Создание временного файла, а затем проверка, существует он или нет, кажется одной из возможностей, но может быть дорогостоящим. Таблица блокировки в БД?)

Подробнее здесь: https://stackoverflow.com/questions/145 ... -instances

Вернуться в «JAVA»