How expensive is a Coroutine?

I'm writing a loader, and I'd like to use Coroutines instead of delegate callbacks to signal asynchronous completion. My current implementation looks like this:

IEnumerator WaitForLoad() {
    while(!isCompleted) {
        yield return new WaitForSeconds(kPollRate);
    }
}

Will that be very wasteful? Especially if many WaitForLoad()s are executing in parallel?

Nope! You're fine. You'll see some slowdown if you have upwards of 100 or so of them though.