For this to work, perhaps Rust should cooperate too, inserting .await points at strategic places in the code, to keep cost low but still guaranteeing a certain responsiveness of the overall system.
And you would need to avoid having any kind of call to external code (or yield before and after every such call, and pray for the best).