Tim Peters added the comment:
Noting that adding a `.join()` to the failing code on the StackOverflow report
appeared to fix that problem too.
In hindsight, I guess I'm only mildly surprised that letting the main process
run full speed into interpreter shutdown code while worker processes ar
Tim Peters added the comment:
And more weirdness, changing the tail to:
for i in range(10):
state_value.value = i
state_ready.clear()
producerprocess = MyProducer(state_value, state_ready)
consumerprocess = MyConsumer(state_value, state_ready)
produc
Tim Peters added the comment:
Weird. If I insert these between the two process starts:
import time
time.sleep(2)
then the producer produces the expected output:
at start: 666
at producer start: 666
and the program blows up instead when it gets to
print("in consumer:", self.val.
New submission from Tim Peters :
This started on StackOverflow:
https://stackoverflow.com/questions/63623651/how-to-properly-share-manager-dict-between-processes
Here's a simpler program.
Short course: an object of a subclass of mp.Process has an attribute of
seemingly any type obtained from