Моя программа включает несколько потоков JAVA, вызывающих файл сценария KornShell (ksh) с различными параметрами.Этот файл сценария, в свою очередь, вызывает некоторые команды SQL, которые возвращают некоторый статус.Я сохраняю это состояние в переменной как часть скрипта, проверяю значение, возвращаемое из SQL, и выполняю соответствующие действия.Проблема заключается в том, что все сценарии выполняются в одном сеансе, и, следовательно, имя переменной становится общим для всех потоков.Поскольку эти потоки работают асинхронно, я хочу, чтобы эта ссылка была разорвана.Самым простым решением, которое я мог придумать, было создание отдельной переменной для каждого потока (используйте некоторый входной параметр для скрипта в качестве идентификатора), но это означало бы, что имя этой переменной должно быть динамическим.То есть я должен иметь возможность использовать значение переменной в имени другой переменной.Это вообще возможно?Если это так, то как мне это сделать?
Java Thread - |Та же сессия |||Java Thread - - |Тот же сценарий |||Java Thread - - - |То же имя вар |||
Java Thread - - |(Это то же самое var | | name может вызвать | Поток Java - | Несоответствия) |
Если нет, то может ли кто-нибудь предложить альтернативный подход?Важным аспектом этого является то, что часть JAVA является серверной программой и будет работать в течение продолжительного времени, поэтому мне нужно будет вручную «сбросить» эти переменные.(Что-то, что я не могу сделать, если я использую массив для хранения всего этого)