Próbowałem wykonać ponowne kodowanie wiersza polecenia systemu Windows w języku C #. Zastanawiałem się, skąd wiersz poleceń wie, kiedy czekać na rozpoczęcie procesu kończenia, a kiedy nie czekać na zakończenie wywoływanego procesu.
Na przykład, jeśli wpiszesz w wierszu polecenia „notatnik”, uruchomi się Notatnik , ale nadal możesz wykonywać inne polecenia. Jeśli jednak otworzysz narzędzie, takie jak more.com, ping.exe lub inne narzędzie, zaczeka na zakończenie działania programu, zanim pozwoli ci wykonać kolejne polecenie.
Skąd wiersz polecenia wie, kiedy czekać na zakończenie i jak można emulować to zachowanie w języku C #?