Te recomiendo utilizar Métodos Asíncronos
Código c#:
Ver original// Llamamos la librería
using System.Threading.Tasks;
// creamos el método que ejecutará una acción cada X milisegundos
public async void Ejecutar(Action action, int timeoutInMilliseconds)
{
await Task.Delay(timeoutInMilliseconds);
action();
}
// Método a ejecutar
private void EscribirConsola()
{
Console.WriteLine("Estoy escribiendo");
}
//Llamado de método EscribirConsola() para que se ejecute cada 2 segundos
Ejecutar(EscribirConsola, 2000);