Błąd PyTorch: Linia "freeze_support()" może zostać pominięta, jeśli program nie zostanie zamrożony w celu wygenerowania pliku wykonywalnego.
Kod błędu jest następujący:
RuntimeError: Podjęto próbę rozpoczęcia nowego procesu przed Obecny proces zakończył fazę bootstrappingu.
To prawdopodobnie oznacza, że nie używasz widelca do uruchamiania procesy dziecięce i zapomniałeś użyć właściwego idiomu W głównym module:
jeśli __name__ == '__main__': freeze_support() ...
Linijka "freeze_support()" może zostać pominięta, jeśli program nie zostanie zamrożony, by wygenerować plik wykonywalny. Błąd czasów uruchomienia: Podjęto próbę rozpoczęcia nowego procesu przed Obecny proces zakończył fazę bootstrappingu.
To prawdopodobnie oznacza, że nie używasz widelca do uruchamiania procesy dziecięce i zapomniałeś użyć właściwego idiomu W głównym module:
jeśli __name__ == '__main__': freeze_support() ...
Linijka "freeze_support()" może zostać pominięta, jeśli program nie zostanie zamrożony, by wygenerować plik wykonywalny.
rozwiązanie
Po prostu wpisz blok kodu, który chcesz uruchomić, do głównej funkcji i uruchom ją, na przykład:
rozróżniać
Kod w modułach (w tym wywołania funkcji) bez if __name__ == '__main__':: jest również wykonywany podczas importu. Dodaj jeśli __name__ == '__main__':: Kod w module (w tym wywołania funkcji) jest wykonywany tylko wtedy, gdy moduł jest uruchamiany jako główny program, a nie podczas importu.
Ten wzorzec pomaga poprawić ponowne wykorzystanie kodu i modułowość, unikając przypadkowego wykonania niektórych kodów podczas importu modułów.
|