import threading
#线程名字
# class MyThread(threading.Thread):
#
# def run(self):
# print("%s线程正在下载..."%self.name)
#
# if __name__ == "__main__":
# t = MyThread(name="downloadThread")
# t.start()
#2.线程的执行顺序
import time
class MyThread(threading.Thread):
def run(self):
for i in range(3):
time.sleep(1)
msg = "I'm "+self.name + "@" + str(i)
print(msg)
if __name__ == "__main__":
for i in range(5):
t = MyThread()
t.start()
#当线程执行到sleep语句时,线程将会被阻塞(Blocked),到sleep结束后,
#线程就进入就绪状态(runable),等待CPU调度,
#线程的调度是由CPU或者操作系统根据当时的状态自动调用
#总结
#1.每一个线程一定会有一个名字,,如果用户没有指定名字,系统会为线程指定一个名字(Thread-1/2/3)
#2.当线程的run方法结束的时候该线程完成任务
#3.我们程序员无法控制线程调度的顺序.但是可以通过别的方式来影响线程调度的方式.
#4.线程的几种状态,新建,就绪,运行,死亡,