multithreading OSError: [WinError 87] The parameter is incorrect Как решить?

from tkinter import *
import multiprocessing as mp
mp.set_start_method('spawn')
import os

def maxminThread(root):
    while True:
        if root.state()=="iconic":
            root.state('zoomed')

root = Tk()
root.title('titile')
root.geometry('530x330')

mmt = mp.Process(target=maxminThread, args=(root, ))
mmt.start()

def quit():
    root.quit()
    mmt.kill()

b1 = Button(text="Пока-пока", width=15, height=3)
b1.config(command=quit)
b1.pack()

root.mainloop()

ошибка:

Traceback (most recent call last):
  File "c:\Users\User\Desktop\RecapJapaneseBusuuPython3\main.py", line 17, in <module>
    mmt.start()
  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\multiprocessing\process.py", line 121, in start
    self._popen = self._Popen(self)
  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\multiprocessing\context.py", line 224, in _Popen
    return _default_context.get_context().Process._Popen(process_obj)
  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\multiprocessing\context.py", line 327, in _Popen
    return Popen(process_obj)
  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\multiprocessing\popen_spawn_win32.py", line 93, in __init__
    reduction.dump(process_obj, to_child)
  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\multiprocessing\reduction.py", line 60, in dump
    ForkingPickler(file, protocol).dump(obj)
TypeError: cannot pickle '_tkinter.tkapp' object
PS C:\Users\User\Desktop\RecapJapaneseBusuuPython3> Traceback (most recent call last):
  File "<string>", line 1, in <module>
  File "C:\Users\User\AppData\Local\Programs\Python\Python39\lib\multiprocessing\spawn.py", line 102, in spawn_main
    source_process = _winapi.OpenProcess(
OSError: [WinError 87] The parameter is incorrect

Я использую python 3.9.2, хотя я пробовал запускать код на версиях 3.7.8 и 3.10.0

У меня windows 10


Ответы (0 шт):