не в докере. Можно ли как-то запустить процесс в бэкграунде? let _child = std::process::Command::new(..).spawn() вроде делает то что надо, но как потом завершить этот процесс? можно конечно записать пид где-то в файлик и потом использовать его. Но это выглядит как-то велосепедно, нет?
То есть мне нужно следующее:
./myprog start - start process in background
./myprog stop - stop process in background
Есть ли у вас какие-то советы как правильно такое делать, или инфа чтобы почитать, или примеры посмотреть?
тебе .spawn() возвращает Child, у которого есть метод .kill()
да, но я хочу просто запустить процесс и отпустить терминал
нужно либо сделать так, чтобы команды коммуницировали с главным демоном по какому-нибудь IPC, либо, действительно, запомнить PID
Обсуждают сегодня