Проблема, похоже, заключается в методе остановки.
Я думаю, я мог бы знать, в чем проблема, но я не уверен на 100%.Ответ на вопрос, почему, кажется, находится в документации по Python.Этот код работает нормально (я отредактировал синтаксис и использовал tkk
для кнопок, он выглядит лучше):
from tkinter import *
from tkinter import ttk
import multiprocessing
def print1():
global a
while a is True:
print('im process 1')
def print2():
global a
while a is True:
print('im process 2')
def start():
process1.start()
process2.start()
def stop():
process1.kill()
process2.kill()
a = True
if __name__ == '__main__':
process1 = multiprocessing.Process(target=print1)
process2 = multiprocessing.Process(target=print2)
root = Tk()
root.title("Title")
root.geometry("200x200")
app = Frame(root)
app.grid()
start = ttk.Button(app, text="Start", command=start)
stop = ttk.Button(app, text="Stop", command=stop)
start.grid(padx=15, pady=20)
stop.grid(column=1, row=0)
root.mainloop()
process1.join()
process2.join()
Надеюсь, это поможет!