otherwise the slave got the same value multiple times which i didn't want
That's a bug, it should be fixed, not worked around.
delay() usually causes problems of its own, such as missing a reading you do want, or interfering with
other code on the slave.