You may be experiencing operating system limitations. Most desktop OSes can take variable and significant amounts of time, especially to respond to user inputs and to redraw the screen image. 10s to 100s of milliseconds latency, even with a fast processor may not be unusual.
As for multithreading, LV does a pretty good job on its own. Set up one loop to handle user input and screen images only. Put all other processing into a separate loop - your metronome, any decision making, data collecting and analysis, etc. Communicate between the loops with queues or notifiers. Put a wait in each loop so LV's scheduler will share processing time between the loops. Try not to do much of anything else during the critical time period. And try to figure out if you c
an detect OS latencies in your data and handle them appropriately during the analysis.
Lynn