News for hackers. Stuff that matters.
Re:The memory models that underlie programming languages (2016) by tsimionescu on Thursday June 10, 2021 @06:07AM (#27458951)
Serialization does not eliminate concurrency, it is a strategy for dealing with it. That is, when your abstract model requires concurrent writes, you can instead add the operations to an event queue and process them serially. The event queue itself is still concurrently written to. You also still face complex problems with dependent writes - e.g. when two writers want to increment the same place (even worse when they need to apply a more complex function than incrementing, and worse of all when they want to apply a non-pure function to the current value).
Re:The memory models that underlie programming languages (2016) by nine_k on Thursday June 10, 2021 @02:16PM (#27463683)
I agree, but I still can't see where a WM might need to concurrently write to a per-window event queue. Also, I can't see why pushing onto a queue can't be blocking (with a timeout) and use a mutex, if multiple threads need to write to it.

With game engines, all bets are off, of course.