private void startReaderTimer() {
        new Thread(threadGroup, new Runnable() {
            @Override
            public void run() {

                try {
                    while (true) {
                        Message msg = readQueue.poll(4 * 3, TimeUnit.SECONDS);
                        if (msg == null) {
                            kill();
                            break;
                        }
                    }
                } catch (InterruptedException e) {
                    kill();
                }
            }
        }).start();
    }