А что за цикл такой, что кнопкой прервать? Всегда можно флаг в цикл добавить, если тру, то прекращать, а по кнопке его менять.
Но тут как я понял долгие процессы запускаются в цикле, их и прерывай, смотря во что ты их обернул
По сути обычный for, и да, кнопкой, тоесть ивентом.