Доступ к данным переднего плана из фонового процесса

Я хочу запустить процесс в фоновом режиме, используя & , и предоставить процессу доступ к данным, используемым в процессе переднего плана.

Вот пример:

A() {
  echo "$a"
}
a="abc"
while true; do echo "$(A)"; sleep 10; done &
a="xyz"

Результатом фонового процесса всегда является «abc». Не имеет значения, какое значение помещается в a после запуска фоновой задачи. В этом примере я хочу, чтобы первая итерация выводила «abc», и через 10 секунд на выходе должно быть «xyz».

Я хочу, чтобы фоновый процесс вел себя как поток в Windows. Поток имеет полный доступ ко всем данным (но не должен изменять данные, которые могут повлиять на пользовательский интерфейс). Возможно ли это?

0
23.08.2017, 06:00
1 ответ

Лучший способ сделать это — просто использовать файлы. Другие подходы включают именованные каналы и (в некоторых оболочках) сопроцессы.

0
28.01.2020, 04:41

Теги

Похожие вопросы