Python multiprocessing.Process

Есть код:

import multiprocessing
import time

class Process(multiprocessing.Process):

    def __init__(self):
        self.queue = []
        self.ids_sum = 0
        super().__init__(target = self.global_handler)

    def global_handler(self):
        while True:
            if self.queue:
                message_id = self.queue.pop()
                multiprocessing.Process(target = self.message_handler, args = [message_id, ]).start()

    def message_handler(self, message_id: int):
        self.ids_sum+=message_id

    def start(self):
        super().start()

if __name__ == "__main__":
    process = Process()
    process.start()
    for i in range(100):
        process.queue.append(1)

    for _ in range(5):
        print(process.ids_sum)
        time.sleep(1) 

Почему в методе global_handler значение self.queue равно [], если его вывести на печать внутри метода? Однако, значение process.queue содержит целый список


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