This project is a java RMI application allowing the Java Clients to
- Adding a new Task to the Pool and Setting its priority in a BlockingPriorityQueue for thread-Safety .
- Removing a Task from the Pool before its execution .
- Show all the remaining tasks before their termination .
- Executing the tasks using 16 workers threads .
- Creation of a new worker thread when a thread is interrupted or is down .
- Concurrency management of multiple clients at once .
At the beginning , when launching the client a prompt giving multiple options will be shown:
1 : Add a new task
2 : Remove a task
3 : Show all tasks
4 : Enable/disable tasks execution
"#": Exit
cd src && javac Server/*.java Client/*.java
java Server.Server
java Client.client