Corrected the path of
and add the missing xsd.
From Visual studio :
Add xsd in solution explorer.
Right click on root xsd and click on generate xml
Convert xml to class.
Unlike TCP, UDP is connection-less, and as such you don't need to
create separate sockets for each party. One UDP socket can handle
everything. Bind it to a local IP/Port and call WSARecvFrom() once,
and when it reports data to your IOCP you can process the data as
needed (if another thread if needed) and then call WSARecvFrom()
again. Each time new data arrives, you have to look at the reporte
There's actually a paragraph (3.2.6) in the book explaining that the
code is virtually equivalent and you could replace one with the other.
The only difference being is that std::unique_lock tends to take more
space and is a fraction slower than std::lock_guard.
Bottom line is whenever you don't need the additional flexibility that
std::unique_lock provides, go with std::lock_guard.