Python/Tkinter: Является ли Tkinter StringVar (IntVar и т. Д.) Потокобезопасным?

Являются ли Tkinter StringVar (IntVar, FloatVar и т. Д.) Потокобезопасными, например. может ли фоновый поток читать или писать в эти объекты? Или я должен использовать Очередь для передачи информации между моим фоновым потоком и моим основным потоком графического интерфейса Tkinter, и чтобы мой основной поток Tkinter выдвигал Очередь и соответственно обновлял StringVar приложения?

Я знаю, что фоновые потоки моего приложения не должны читать или записывать виджет Tkinter напрямую, но мне неясно, считаются ли StringVar (или тому подобное) виджетами или они являются объектами, достаточно удаленными от виджетов, что они являются поточно-ориентированными для фоновых потоков для читать и / или писать.

1 ответ

Обязательно пройдите маршрут Queue. В Tkinter ничего не настроено для обеспечения безопасности потоков:(

Другие вопросы по тегам