How To cycle coroutine in C# say every 1 sec?

as above
For example i need this to run every second

void Start () {
	
	thisTransform = transform;
	StartCoroutine(onCoroutine());
	
}

IEnumerator onCoroutine()
{
	Debug.Log ("OnCoroutine: "+Time.time);
	yield return new WaitForSeconds(1f);
}

IEnumerator onCoroutine()
{
while(continueCoroutine) { //variable that enables you to kill routine
Debug.Log ("OnCoroutine: "+Time.time);
yield return new WaitForSeconds(1f);
}
}

Just use while(true), and have your yield inside of the while(true) statement. I’d also cast Time.time to an int.

using UnityEngine;
using System.Collections;

public class Example : MonoBehaviour 
{
	void Start()
	{
		StartCoroutine (onCoroutine());	
	}
	
	IEnumerator onCoroutine()
	{
	    while(true) 
		{ 
	        Debug.Log ("OnCoroutine: "+(int)Time.time);
	        yield return new WaitForSeconds(1f);
	    }
	}
}