public void start(Object chanMgrId) {
        threadFactory = new MyThreadFactory(name, isDaemon);
        ArrayBlockingQueue<Runnable> queue = new ArrayBlockingQueue<Runnable>(queueSize);
        LookAheadQueue proxy = new LookAheadQueue(queue);
        executor = new ThreadPoolExecutor(numThreads, numThreads,
                keepAliveTime , TimeUnit.MILLISECONDS, proxy, threadFactory);
    }