I have a doubt regarding threads. Suppose a Java program runs two threads. One of them gets blocked, e.g. awaiting a TCP packet, while the other one goes on running. After a while the Java Interpreter is removed from the CPU. Which is then the state of the Java Interpreter, since it has a blocked thread and a runable one. Is the interpreter blocked or runable. Please, a detailed explanation is required.