Acesso a dados em primeiro plano do processo em segundo plano

0

Eu quero executar um processo em segundo plano, usando & , e fazer com que o processo acesse os dados usados no processo de primeiro plano.

Aqui está um exemplo:

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

A saída do processo em segundo plano é sempre "abc". Não importa qual valor é colocado em a depois que a tarefa em segundo plano é iniciada. No exemplo, quero que a primeira iteração produza "abc", e 10 segundos depois a saída deve ser "xyz".

Eu quero ter um processo em segundo plano para se comportar como um thread no Windows. O segmento tem acesso total a todos os dados (mas não deve alterar os dados que afetariam a interface do usuário). Isso é possível?

    
por Richard M Saville 23.08.2017 / 04:32

1 resposta

0

A melhor maneira de fazer isso é simplesmente usar arquivos. Outras abordagens incluem pipes nomeados e (em algumas conchas) coprocessos.

    
por 23.08.2017 / 05:02