I’m making a GUI using Java (who isn’t?). I know the Swing Worker class enables computation in the background to prevent the GUI from hanging, but I was wondering if there could be too much of a good thing here…
For instance, if there were too many instances of those background threads running, would it impact the performance of the program depending on the computer? A simple, but important question. I would greatly appreciate any input. Thanks for your time.
Yes, the more processing you do, naturally, it will affect the performance of the computer. After all, processing resources is a limited resource.
That said, many modern computers have multiple cores, which means that a single-threaded application will probably not be able to take full advantage of the processor resources.
In general, having a few threads running is not going to be a big problem. However, once there are hundreds or thousands of threads, performance can degrade, as the time it takes to do a context switch between threads can start to take up a larger fraction of the processing resources that are available.