I wrote third party software for BeOS for a few years, I don't remember anything being asynchronous. BeOS was quite the opposite; everything was threads. Threads were cheap so it didn't matter if you blocked one. One of the demos rendered and displayed realtime video by spawning a new thread for every frame.
Window messages were done using a MessageReceived() function with message codes that was almost exactly like WndProc on Windows. Very C-like despite being a C++ API.
Window messages were done using a MessageReceived() function with message codes that was almost exactly like WndProc on Windows. Very C-like despite being a C++ API.