При выполнении "тяжелых" (долгих) операций я
1. Вывожу окно вида "выполняется операция XXX..."
2. Создаю таймер и запускаю его на выполнения с повторением 1 раз.
3. Тяжелую операцию выполняю в функции таймера, а в конце скрываю сообщение.
Всё работает отлично. Но теперь понадобилось после выполнения этой тяжелой операции сохранить данные в файл. Однако, при вызове

Код AS3:
FileReference.save(data, filename);
программа зависает.
Есть ли какое то решение для данной проблемы?
Т.е. вывел сообщение, выполнил операцию, сохранил результат в файл, скрыл сообщение.