Przejdź do treści
Wyjątki PythonBłąd
BrokenPipeError

BrokenPipeError

Podjęto próbę zapisu do potoku lub gniazda, którego koniec odczytu został zamknięty.

python

Co powoduje ten błąd

Zapisano dane do połączenia/potoku po zamknięciu strony odbierającej. Typowe scenariusze: zapis do stdout, gdy jest podłączony potokiem do procesu, który zakończył działanie (np. python script.py | head), lub wysyłanie danych po rozłączeniu klienta.

Jak to naprawić

Obsłuż BrokenPipeError elegancko, szczególnie dla stdout. Użyj signal.signal(signal.SIGPIPE, signal.SIG_DFL), aby przywrócić domyślne zachowanie potoku. Sprawdź, czy połączenie jest nadal otwarte przed zapisem. Używaj try-except wokół operacji zapisu.

Oficjalna dokumentacja

Powiązane kody błędów