Errore di arresto

Sintomo:

Eseguendo php start.php stop appare il messaggio stop fail.

Prima possibilità

Se si avvia Workerman in modalità debug e si preme ctrl z nella console, viene inviato un segnale SIGSTOP a Workerman, facendolo entrare in modalità di sospensione in background, impedendo così di rispondere al comando di stop (SIGINT).
Soluzione:
Nella console in cui è in esecuzione Workerman, digitare fg (per inviare il segnale SIGCONT) e premere Invio, per riportare Workerman in primo piano, quindi premere ctrl c (per inviare il segnale SIGINT) e arrestare Workerman.
Se non si riesce a fermarlo, provare a eseguire i seguenti comandi:

killall -9 php
ps aux|grep -i workerman|awk '{print $2}'|xargs kill -9

Seconda possibilità

L'utente che tenta di arrestare Workerman non corrisponde all'utente che lo ha avviato, cioè l'utente di arresto non ha i permessi per fermare Workerman.
Soluzione:
Passare all'utente che ha avviato Workerman, o utilizzare un utente con privilegi più elevati per arrestare Workerman.

Terza possibilità

Il file pid del processo principale di Workerman è stato eliminato, quindi lo script non può trovare il processo pid, causando un fallimento nell'arresto.
Soluzione:
Salvare il file pid in una posizione sicura, consultare il manuale Worker::$pidFile.

Quarta possibilità

Il file pid del processo principale di Workerman non corrisponde al processo di Workerman.
Soluzione:
Aprire il file pid del processo principale di Workerman, verificare il pid del processo principale, che di default si trova nella stessa directory di Workerman. Eseguire il comando ps aux | grep pid del processo principale per verificare se il processo corrisponde a Workerman. Se non corrisponde, potrebbe essere dovuto a un riavvio del server che ha reso obsoleto il pid salvato da Workerman e quel pid è stato utilizzato da un altro processo, causando il fallimento dell'arresto. In questo caso, eliminare il file pid.

Quinta possibilità

Se si è installata l'estensione grpc ma non sono stati impostati i relativi parametri dell'ambiente, all'avvio verrà creato un processo di montaggio aggiuntivo, causando un fallimento nell'arresto.