That is not Dev-C++. That is a fork of Dev-C++ called "Orwell Dev-c++"I'm afraid you are wrong, please see
The two are very different. When you write "dev-c++" people will take that at face value, not assume you are talking about a fork of the product.
With those details we can see you are using either MinGW 4.7.2 or TDM-GCC x64 4.7.1.
Neither of those compilers supports C++11 threads. MinGW has stated in their documentation and even directly on their home page that they "do not, and never will" provide the full support needed. (They rely on the same library that uses std::thread as a wrapper of GThread which is a wrapper of pthread that is incomplete.)
It is of course your choice to pick a compiler that does not respect the C++11 standard.
Thread-per-connection is not a solid design. It can work for trivial problems like simple file transfers, but for games it is usually a bad fit. Head over the Networking Forum FAQ #10 and #11 for some details on that.Obviously I not only need them as common sense but I also need them at the moment for server side to listen and deal with multiple connections.
The more common way to handle many collections is with connection pools and asynchronous calls.
There are many useful links to documentation and example source code in the Networking Forum FAQ. Those are not beginner techniques
If you want to learn Boost Threads, then do so. Boost has discussion groups where you can ask questions about it if people on this board don't have the answers you are looking for.C++11 is a relatively new "thing" and as I mentioned I was advised that Boost Threads are more "powerful" or "flexible".
The C++11 thread library standard was based on the Boost implementation, and the Boost implementation was used for the reference implementations in several compilers.
It is no more powerful under just about any interpretation. The Boost library is more flexible in that you can modify the source directly if something about it does not meet your needs whereas the standard library implementation you cannot.
Unless you have specific reason to avoid it --- such as your decisions that prohibit the use of a modern compiler, or the preferred use of a specific operating system's native and more advanced functions --- c++11's threading functionality is comprehensive enough to handle most common needs.
Since for your own reasons you are choosing to use either MinGW 4.7.2 or TDM-GCC x64 4.7.1, that means C++11 functionality will not be available to you. So Boost or native functions are both good options.
I wrote that multithreading is hard, not that it is scary.No offence/disrespect on the following sentence meant(please): Yeah multi-threading is very scary....it's like an Armageddon... well, no, not really.
On the surface you want to learn about threads. Great! Learning is a good thing.
In the process you will also need to learn about proper use of synchronization and locks and mutexes and semaphores, reentrant code, threaded storage, processing granularity, purity/isolation of data, memory barriers, CPU caches and cache coherency, and other topics. You will need to learn about the bugs that come with threading including deadlocks and livelocks, resource starvation, race conditions, memory thrashing, convoying, write tearing, and much more. Threading has even spawned a mathematical notation called transactional object calculus to help model the complexity of threading. It is an interesting topic and very much worth learning, just be aware of the scope.
In a university setting most schools will wait to cover the topic in depth until your fourth year, while other schools further delay it until graduate studies.
Again, I note that this is in For Beginners forum. Multithreading and parallel processing are an interesting topic, but it is complex and nuanced and generally not for beginners.
So trying to re-address the topic...
Your chosen compiler (either MinGW 4.7.2 or TDM-GCC x64 4.7.1, you didn't specify) does not support C++11's threading libraries.
Your chosen compiler also does not fit well with Boost's default configuration you will need to add several options to get it to work because the compiler uses a different toolchain than the default builder expects.
Once you've got Boost installed, the easy part is done. Then you have the introduction to Boost Threads, among those one of the gentler articles is
here.
You will probably also want to use Boost ASIO library for your network code since it plays well with the Boost Thread library. Google is your friend for documentation on that.