A C# development project (VS 2010), performing data collection with analog to digital device, on three 'channels'. Device requires polling so a background thread polls and buffers current device state into 3 List<>.
UI, component moves desired List<> into strip chart component.
This works well.
UI contains TAB control, for user to context switch between the three lists/streams of data. Each tab page takes FOREVER to refresh/redraw. Even on form init. (which may be acceptable to stream buffering delays) but should not be present once app settles into load.
Of interest is that while profiling application to identify possible bottleneck, app works perfectly?
How should one properly instrument background threads.
What is profiler introducing that would 'hide' this refresh delay.
PS, there is one delegate/invoke from the worker thread back to the UI layer, which seems to take considerable time. All information says using this invocation approach is best soltution to having threads update UI controls.