I have an application with a class that implements ILocationProvider to read a serial port GPS. Reporting location updates too quickly almost guarantees that the application will lock up [control-alt-del followed by cancel will free it up again]. Sleeping the BackgroundWorker thread for 4000 ms between reads reduces the chance of this happening, but if I continually resize a child window for long enough (say several seconds), the app will inevitably lock up.
Has anyone else seen this behavior? Is there any way I can eliminate it altogether?
UPDATE: If I use the class in a simple example, the problem doesn't crop up. I'll update again if I can figure out how to duplicate the problem.