 Then, a control unit can switch to an alternative thread of execution whose data has been fetched while the thread was idle.A thread has its own program counter, a stream of instructions and a separate set of registers.Designers vary the number of threads depending on current memory technologies and the type of computer.