public void acceptRequest(AsynchronousSocketChannel socket) {
        Worker worker = workers.poll();

        if (worker == null) {
            requests.add(socket);
        }
        else {
            synchronized (worker) {
                worker.setSocket(socket);
                worker.notify();
            }
        }
    }