In this session, I tried to fix the bug that was caused by multithreading. Creating a thread and pushing it back to a vector only worked when its constructor was called inside the vector.
The problem still appears to be that it is still getting replaced by the newest process. There was also trouble when the function that checks the connection was executed which led to causing the "You have been disconnected from the internet" dialogue box to appear but for some reason, it kept going even though the static bool that I use to cancel the operation was turned to true.
I think the problem here is my limited understanding of the thread object. I did read a little bit about it but I think I have to dive deeper to completely understand it as multithreading is a a thing that is aimed at experienced programmers.
So, I need to learn more about concurrency in computing before proceeding. So, for the next sessions, I need to read more about multithreading and concurrency.