C # llamando a form.show () desde otro hilo

si llamoform.show() en un objeto WinForms de otro hilo, el formulario lanzará una excepción. ¿Dónde puedo agregar un nuevo formulario visible al hilo principal de la aplicación? De lo contrario, ¿cómo puedo abrir el formulario sin detener el subproceso que se está ejecutando actualmente?

Aquí está mi código de ejemplo. Estoy intentando iniciar un hilo y luego ejecutar algún trabajo dentro de ese hilo. A medida que avanza el trabajo, mostraré el formulario.

public void Main()
{
    new Thread(new ThreadStart(showForm)).Start();
    // Rest of main thread goes here...
}

public void showForm() 
{
    // Do some work here.
    myForm form = new myForm();
    form.Text = "my text";
    form.Show();
    // Do some more work here
}

Respuestas a la pregunta(3)

Su respuesta a la pregunta