Moving from normal threads to ExecutorService thread pools in java
A few simple remarks :


thread = new Thread(this, "SocketThread"); is no longer needed in MyRun, since the ExecutorService is the one creating and managing the Threads.
you will want to call execService.shutDown() to properly clean up the resources of the executorService.