system
блокируется до тех пор, пока не будет выполнена команда, которую он выполняет.Для запуска команды и немедленного возврата используйте Process#spawn
:
def execution_start
puts "About to start"
pid = Process.spawn("appium")
puts "Done!!"
end
. Затем можно использовать возвращенный идентификатор процесса, чтобы отслеживать, завершился ли процесс и с каким кодом выхода,позже в вашей программе.
(Обратите внимание, что в соответствии с документацией вам необходимо в конечном итоге Process#wait
PID или, по крайней мере, зарегистрировать незаинтересованность, используя Process#detach
для предотвращения превращения подпроцесса в зомби.)