serverSocket.accept();
блокируется до тех пор, пока не будет подключен сокет.
Socket s = serverSocket.accept();
in = new DataInputStream(new BufferedInputStream(s.getInputStream()));
ИЛИ
socket = serverSocket.accept();
in = new DataInputStream(new BufferedInputStream(socket.getInputStream()));
РЕДАКТИРОВАТЬ - 29.03.2019 11.54
Итак, мы знаем:
serverSocket.accept();
блокирует вашу ветку.Вы называете это в своей главной теме.
...
successfulThreads = new AtomicInteger(0);
latch = new CountDownLatch(testcaseThreads);
gate = new CyclicBarrier(testcaseThreads + 1);
server = new Server(SOCKET_PORT);
server.start(); //<-- Your program blocks!!!
// ||
// || STOP! No execution of the code.
// \\//
// \/
for (File testcaseFile : testcaseFiles) {
new Thread(new MockClient(this, testcaseFile)).start();
}