I have a program that creates a variable number of threads to do work in the following way:

Main GUI
sub GUIs
Thread for each sub GUI
Thread that performs many io reads

This is simplified, but this is the basic structure.

My problem is this: the bottom thread freezes the top GUI.

I can't show any code (belongs to my company not me).

All of my objects are created in the run methods as they should be.

Other windows in other applications don't show any signs of slowdown so it is not the cpu.

Any Ideas?

Thank You