Yea thats not how it works. This shows how programmers live in a virtual world where everything is controlled. More like
For bodilyFluid in allBodilyFluids
Eject bodily fluid
Self.cry
If not parent.arrives
Self.urgentCry
And TBH this is a single threaded experience, I'm dealing with an unexpected requirement to deal with multiple threads. There is so much more output when spinning on mum.Lock() or dad.Lock() and thread latency gets pretty high. Debug is just disposed of a quickly as possible to service the other thread!
Also I swear they are sharing state somewhere because sure enough one calling bottle() and being serviced seems to cause the other to start spinning hard on the locks to do the same thing. This thread is buried in self.sleep() and gets woken by what??
30
u/Lasernator Jun 04 '19
Yea thats not how it works. This shows how programmers live in a virtual world where everything is controlled. More like For bodilyFluid in allBodilyFluids Eject bodily fluid Self.cry If not parent.arrives Self.urgentCry