You don’t have threads on embedded, but you want a way to express concurrent waiting. Different problems altogether

You can, though. We used pthreads (well, pthresd compatible API) in production at massive scale on the ESP32-S3.