Using Coroutines

I have a function that I want to pause its process, run a second function, and then resume the first function once the second one repeats.

I beleive this is accomplished using coroutines.

Ive never used them before though, could someone explain how? thanks.

print ("Starting " + Time.time);
// Start function WaitAndPrint as a coroutine
yield WaitAndPrint();
print ("Done " + Time.time);

function WaitAndPrint () {
    // suspend execution for 5 seconds
    yield WaitForSeconds (5);
    print ("WaitAndPrint "+ Time.time);
}

// - prints "Starting 0.0"
// - prints "WaitAndPrint 5.0"
// - prints "Done 5.0"

is this what you are looking for?

source: http://unity3d.com/support/documentation/ScriptReference/Coroutine.html