Adding "Thread.sleep(10)" in CounterThread of taks 2.1 on Threads
Adding  task 2.2 on Threads
Synchronized methods "add()" and "remove()" of Exception tasks, and adding two Threads for producer and consumer
Adding private field "finishCount"  in "Counter" class
Adding task 2.2 by Threads, before check
Adding task 2.5 by Threads, before check
Finish task 2.1 from Threads after check.Adding break in try-catch and removed "if (!isInterrupted)".
Finish task 2.2 from Threads after check.Adding "setThread(Thread thread)", and removed "static field boolean".
Finish task 2.3 from Threads after check.Adding "objectSynchronized"
Finish task 2.5 from Threads after check.Adding  same "Consumers" and "Producers"
Finish task 2.1 from "Networking and GUI" before check.
Finish task 2.2 from "Networking and GUI" before check.
Finish task 2.2 from "Networking and GUI" before check.