Consider these change

Changes in ThreadController and MessagePassing