Ok, so to put in a language that I understand, are you saying I should replace my 1::samp => now with me.yield()?
Yes, I think so.
Advancing time, which is what you are doing, gives other shreds a chance to run but it also means this shred will only get the cpu back in a while.
The difference is likely academic but if OSC messages would be flooding in faster then you are advancing time the cue would pile up and latency (or worse) would follow.