Если вы хотите, чтобы задача выполнялась быстро, но то, что вам нужно, на самом деле занимает больше времени, вы можете разделить ее на две части. Иметь тот, который запускается при срабатывании Timer, чтобы вы могли получить вещи в нужное время, но затем перенести серьезную обработку на другую функцию (скажем, в другом потоке), которая может занять столько времени, сколько необходимо. Из API проблема с задачами Timer, занимающими слишком много времени, заключается в том, что они затягивают поток, возможно, задерживая последующие задачи, поэтому перемещение трудоемкой обработки в другой поток должно избежать этой проблемы. Чтобы ответить на вопрос в вашем заголовке, «быстро» означало бы, что «оно должно закончиться до того, как таймер снова начнет срабатывать».