Se è un lavoro "lungo", allora la soluzione corretta è un secondo thread ...

La programmazione multithreading non si studia sui "tutorial" ... ti consiglio di studiare da libri, magari in lingua originale ...