Looping Renderer

I want to figure out how to loop this code when ever i start the scene it does what I want ,but then just flickers. I want it to do what it executed the first time instead of flickering.Heres my code:

var wait : float;
var rend : float;

function Rendering () {
    renderer.enabled = false;
    yield WaitForSeconds(rend);
    renderer.enabled = true;
}

function Update () {
    Rendering();
    Destroy();
}

function Destroy() {
    yield WaitForSeconds(wait);
    Destroy(gameObject);
}

I’m guessing a bit on how you want this to behave, but here is an alternate solution:

var wait : float;
var rend : float;

function Start() {
	InvokeRepeating("Rendering", 0.0, rend);
	Destroy(gameObject, wait);
}

function Rendering () {
    renderer.enabled = !renderer.enabled;
}

Note that Destory() takes an alternate parameter for how long in the future to execute the destroy. Also the way you had this code structured, you were stacking up a large number of coroutines (i.e. you were getting two new coroutines every time Update() is called.