reduce block time by using a busy-wait loop