I m not a expert in quasar but i have similar problems
if you can replace code, you might using quasar mutex (in concurrent lib). For wait/notify using Strand.park. I didnt receive any answers to this questions so i m reasoning with logic for deducting ....
If you use Quasar mutex/park just in one side ... i think it dont work because producer and consumer will use different locks.
In my case a problem more complex. I cant replace the code in old lib.
I was thinking to use channels for passing the result from a default context to fiber context.
I m not sure if it has a sense.... in performance.
Anyway i think quasar might be developed inside JVM for evoiding all this problems.