Запишите в PySimpleGUI.Multiline из журнала. Handler выдает исключение. ⇐ Python
Запишите в PySimpleGUI.Multiline из журнала. Handler выдает исключение.
У меня есть PySimpleGUI с кнопкой и многострочным текстом. Когда я нажимаю на кнопку, вызывается метод, который запускается на пару секунд (вызывает, в частности, методы GitPython). Метод должен непрерывно записывать свои выходные данные в многострочный файл. Для этого я создал регистратор и добавил к нему обработчик:
класс OutputHandler(logging.Handler): окно: PySimpleGUI.Window def __init__(self, окно: PySimpleGUI.Window): супер().__init__(регистрация.DEBUG) self.window = окно Защиту излучать (сам, запись): печать(запись.msg) self.window["-OUTPUT-"].print(record.msg) само.окно.обновить() Регистратор пересылается моему методу, и метод печатает в него свои выходные данные. Прогресс GitPython также пересылается в этот регистратор.
Теперь время от времени я сталкиваюсь со следующим исключением:
Исключение в потоке Thread-12 (pump_stream): Traceback (последний вызов последний): Файл "...\Python310\lib\site-packages\git\cmd.py", строка 142, в pump_stream обработчик (строка) Файл "...\Python310\lib\site-packages\git\util.py", строка 662, в обработчике вернуть self._parse_progress_line(line.rstrip()) Файл "...\Python310\lib\site-packages\git\util.py", строка 648, в _parse_progress_line само.обновление( Файл «MyGitPythonApp.py», строка 97, в обновлении. self.logger.info (сообщение) Файл "...\Python310\lib\logging\__init__.py", строка 1477, в информации self._log(INFO, msg, args, **kwargs) Файл "...\Python310\lib\logging\__init__.py", строка 1624, в _log self.handle(запись) Файл "...\Python310\lib\logging\__init__.py", строка 1634, в дескрипторе self.callHandlers(запись) Файл "...\Python310\lib\logging\__init__.py", строка 1696, в callHandlers hdlr.handle(запись) Файл "...\Python310\lib\logging\__init__.py", строка 968, в дескрипторе self.emit(запись) Файл «MyGitPythonApp.py», строка 29, в излучении. self.window["-OUTPUT-"].print(record.msg) Файл "...\Python310\lib\site-packages\PySimpleGUI\PySimpleGUI.py", строка 3582, в печати _print_to_element(self, *args, end=end, sep=sep, text_color=kw_text_color, background_color=kw_background_color, justification=justification, Файл "...\Python310\lib\site-packages\PySimpleGUI\PySimpleGUI.py", строка 17678, в _print_to_element multiline_element.update(outstring, add=True, text_color_for_value=text_color, background_color_for_value=background_color, autoscroll=autoscroll, Файл "...\Python310\lib\site-packages\PySimpleGUI\PySimpleGUI.py", строка 3442, в обновлении начальная_точка = self.Widget.index(tk.INSERT) Файл "...\Python310\lib\tkinter\__init__.py", строка 3767, в индексе return str(self.tk.call(self._w, 'index', index)) RuntimeError: основной поток не находится в основном цикле Вышеупомянутое исключение было непосредственной причиной следующего исключения: Traceback (последний вызов последний): Файл "...\Python310\lib\threading.py", строка 1016, в _bootstrap_inner self.run() Файл "...\Python310\lib\threading.py", строка 953, в запуске self._target(*self._args, **self._kwargs) Файл "...\Python310\lib\site-packages\git\cmd.py", строка 148, в pump_stream поднять CommandError([f""] + remove_password_if_present(cmdline), ex) из ex git.exc.CommandError: Cmd('') не удалось из-за: RuntimeError('основной поток не находится в основном цикле') cmdline: git fetch -v --progress -- origin Что здесь не так?
У меня есть PySimpleGUI с кнопкой и многострочным текстом. Когда я нажимаю на кнопку, вызывается метод, который запускается на пару секунд (вызывает, в частности, методы GitPython). Метод должен непрерывно записывать свои выходные данные в многострочный файл. Для этого я создал регистратор и добавил к нему обработчик:
класс OutputHandler(logging.Handler): окно: PySimpleGUI.Window def __init__(self, окно: PySimpleGUI.Window): супер().__init__(регистрация.DEBUG) self.window = окно Защиту излучать (сам, запись): печать(запись.msg) self.window["-OUTPUT-"].print(record.msg) само.окно.обновить() Регистратор пересылается моему методу, и метод печатает в него свои выходные данные. Прогресс GitPython также пересылается в этот регистратор.
Теперь время от времени я сталкиваюсь со следующим исключением:
Исключение в потоке Thread-12 (pump_stream): Traceback (последний вызов последний): Файл "...\Python310\lib\site-packages\git\cmd.py", строка 142, в pump_stream обработчик (строка) Файл "...\Python310\lib\site-packages\git\util.py", строка 662, в обработчике вернуть self._parse_progress_line(line.rstrip()) Файл "...\Python310\lib\site-packages\git\util.py", строка 648, в _parse_progress_line само.обновление( Файл «MyGitPythonApp.py», строка 97, в обновлении. self.logger.info (сообщение) Файл "...\Python310\lib\logging\__init__.py", строка 1477, в информации self._log(INFO, msg, args, **kwargs) Файл "...\Python310\lib\logging\__init__.py", строка 1624, в _log self.handle(запись) Файл "...\Python310\lib\logging\__init__.py", строка 1634, в дескрипторе self.callHandlers(запись) Файл "...\Python310\lib\logging\__init__.py", строка 1696, в callHandlers hdlr.handle(запись) Файл "...\Python310\lib\logging\__init__.py", строка 968, в дескрипторе self.emit(запись) Файл «MyGitPythonApp.py», строка 29, в излучении. self.window["-OUTPUT-"].print(record.msg) Файл "...\Python310\lib\site-packages\PySimpleGUI\PySimpleGUI.py", строка 3582, в печати _print_to_element(self, *args, end=end, sep=sep, text_color=kw_text_color, background_color=kw_background_color, justification=justification, Файл "...\Python310\lib\site-packages\PySimpleGUI\PySimpleGUI.py", строка 17678, в _print_to_element multiline_element.update(outstring, add=True, text_color_for_value=text_color, background_color_for_value=background_color, autoscroll=autoscroll, Файл "...\Python310\lib\site-packages\PySimpleGUI\PySimpleGUI.py", строка 3442, в обновлении начальная_точка = self.Widget.index(tk.INSERT) Файл "...\Python310\lib\tkinter\__init__.py", строка 3767, в индексе return str(self.tk.call(self._w, 'index', index)) RuntimeError: основной поток не находится в основном цикле Вышеупомянутое исключение было непосредственной причиной следующего исключения: Traceback (последний вызов последний): Файл "...\Python310\lib\threading.py", строка 1016, в _bootstrap_inner self.run() Файл "...\Python310\lib\threading.py", строка 953, в запуске self._target(*self._args, **self._kwargs) Файл "...\Python310\lib\site-packages\git\cmd.py", строка 148, в pump_stream поднять CommandError([f""] + remove_password_if_present(cmdline), ex) из ex git.exc.CommandError: Cmd('') не удалось из-за: RuntimeError('основной поток не находится в основном цикле') cmdline: git fetch -v --progress -- origin Что здесь не так?
-
- Похожие темы
- Ответы
- Просмотры
- Последнее сообщение
-
-
Multiline Regex - Сопоставьте только первую строку, игнорируйте остальные линии
Anonymous » » в форуме JAVA - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-
-
-
Multiline Regex - Сопоставьте только первую строку, игнорируйте остальные линии
Anonymous » » в форуме JAVA - 0 Ответы
- 6 Просмотры
-
Последнее сообщение Anonymous
-