Python多线程类似于同时执行多个不同程序,但其执行过程中和进程还是有区别的,每个独立的线程有一个程序运行的入口、顺序执行序列和程序的出口,但是线程不能够独立执行,必须依存在应用程序中,由应用程序提供多个线程执行控制。
Python多线程优点
1. 使用线程可以把占据长时间的程序中的任务放到后台去处理;
2. 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度;
3. 程序的运行速度可能加快;
4. 在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下我们可以释放一些珍贵的资源如内存占用等等。
Python多线程使用方法
Python中使用线程有两种方式,分别是函数或者用类来包装线程对象。
用函数来包装线程对象的方式
用函数来包装线程对象的方式是调用thread模块中的start_new_thread()函数来产生新线程,线程的结束一般依靠线程函数的自然结束,也可以在线程函数中调用thread.exit()以达到退出线程的目的。具体语法如下:
thread.start_new_thread ( function, args[, kwargs] )
参数说明:
function - 线程函数;
args - 传递给线程函数的参数,他必须是个tuple类型;
kwargs - 可选参数。
用类来包装线程对象的方法
除了调用thread模块来产生新线程外,还可以采用Thread类来处理线程,Thread类提供的方法有