beginInvoke, GUI y thread

Tengo aplicación con dos hilos. Uno de ellos (T1) es la forma principal de la GUI, otro (T2) es una función que funciona en bucle. Cuando T2 obtiene alguna información, debe llamar a la función con el formulario GUI. No estoy seguro de hacerlo bien.

Función de llamada T2 FUNCIÓN, que actualiza algo en forma de GUI.

  public void f() {
        // controler.doSomething();
  }


 public void FUNCTION() {

    MethodInvoker method = delegate {
            f();
    };

    if ( InvokeRequired ) {
        BeginInvoke( method );
    } else {
            f();
    }
 }

Pero ahora debo declarar dos funciones. ¿Cómo se usa solo una función? O cómo funciona.

Respuestas a la pregunta(2)

Su respuesta a la pregunta