k, so this did fix it, after all:
main.cpp
#include <X11/Xlib.h>
...
main(...) {
XInitThreads();
...
}
The reason it wasn't working for me, at first, is because when you link it using -lX11, it needs to be earlier in the list.
After much testing, all of my multithreading is working (100% of the time, not just hit and miss anymore).
[EDIT NOTE: Previous last edit was "« Last Edit: December 03, 2019, 01:04:51 pm by Zakkle »" ]
[EDIT] I have abandoned the threads used by SFML because I have found an efficient way to use std::thread. That said, I have nothing against SFML's threads, per se, but the only reason I was using them in my projects was because that was the only thing available in my project until std::thread was created, and then it took a long time for me to adapt to the standard.