4 ms·
> "Holds" rather than "has", and importantly that system-wide lock must be held by things like SendMessageW (which sends a message and waits for its processing
by qb45 9y ago
> "Holds" rather than "has", and importantly that system-wide lock must be held by things like SendMessageW (which sends a message and waits for its processing before returning) which is pretty critical for UI updates.
Do you happen to know anything about it? I'm scratching my head how it's possible that process termination serializes with GUI... Maybe it hogs some lock on process descriptors which SendMessage also needs to grab for a moment to find the target process? I hope you didn't mean to say that every SendMessage call is completely serialized with each other.
- masklinn 9y ago> Do you happen to know anything about it? I'm scratching my head how it's possible that process termination serializes with GUI… Not anything more than what's in the essay. But possibly some (pair of) utility function calls were added for e.g. a cleanup or notification to the OS between W7 and W10 which was not noticed at the time. > I hope you didn't mean to say that every SendMessage call is completely serialized with each other. It's my understanding that at least a subset of SendMessage is serialised in the kernel yes, and from the essay: > functions like SendMessageW, apparently waiting on a kernel critical region[…], deep in the call stack in win32kbase.sys!EnterCrit (not shown) [0] https://msdn.microsoft.com/en-us/library/windows/desktop/dd744765(v=vs.85).aspx https://msdn.microsoft.com/en-us/library/windows/desktop/dd7...