Not sure if this is appropriate for what you're doing, but have you considered multithreading ? Example in post 10:- Re: SOLVED: Is simulated multithreading the way to go (for what i need to do)?