Che vuol dire "n thread con le altre" ? Da quello che posso capire dal tuo post iniziale, devi fare un lavoro potenzialmente "lungo" e che devi poter fermare. In questo caso questo lavoro è da eseguire in 1 thread a parte .... non N thread.
Comunque c'è da sapere bene come funziona il multi-threading, sincronizzazione, interazione con il EDT, ecc.... Senza queste basi ti assicuro che non si va molto lontano .... (con i thread intendo).