Small assignment to develop (using c#) a client and a server.
Multiple clients pass a string to a server (they are in the same computer so named pipes can be used).
The server, has 'n' threads (configuration parameter, for example 5). Each thread does an initialization task (in this case sleep 20 seconds) and then thread is available to 'listen' clients requests.
When the server receives the string from the client, sends the request to a free thread (locking it until it's done). When the server receives the 6th request, it will wait until a thread is free.
In this example, the server thread will count the number of the characters of the string submitted by the client and return it to the client (or -1 in case of error). Then the thread will be again available to continue attending other clients requests.
The client will print the result obtained from the server.
Client -> sends string to Server
Server-> initializes 5 threads (Thread initialize Sleep(200000))
When server receives string from client -> sends string to free thread
Thread process string (count chars) and returns value to server
Server returns value to client (or -1 in case of error)
If all threads busy, server holds petition until a thread is free.
Hi, I have read the requirements and I would like to do this project if given the opportunity. I am a computer science practitioner and having the "C# and Algorithms Certification Badge" in my profile gives me confidence and assurance that I can deliver you the project as required. Let me know if you are interested so I can start. Thanks.