A multithreaded TCP chat server and client in C++ with Winsock2, supporting broadcast and private messaging with real-time presence
A multithreaded TCP chat server and client written in C++ with Winsock2. The server dedicates a thread per connection and synchronizes shared state with mutexes to safely support many concurrent sessions, offering broadcast and private messaging with real-time presence notifications.
Successfully implemmented a multithreaded TCP chat system capable of handling multiple concurrent clients with real-time messaging and presence notifications. The use of mutexes ensured thread safety and prevented race conditions, resulting in a stable and responsive application.
This was a long term project for my Computer Networks course, and it provided valuable experience in low-level network programming, multithreading, and synchronization techniques.
Dedicated Thread per Connection
Messaging Modes (Broadcast & Private)