Python多线程与多进程

来源:互联网 发布:电脑软件怎么安装 编辑:程序博客网 时间:2024/05/18 13:44

多线程类似于同时执行多个不同程序,多线程运行有如下优点:

  1. 使用线程可以把占据长时间的程序中的任务放到后台去处理
  2. 用户界面可以更加吸引人,这样比如用户点击了一个按钮去触发某些事件的处理,可以弹出一个进度条来显示处理的进度
  3. 程序的运行速度可能加快
  4. 在一些等待的任务实现上如用户输入、文件读写和网络收发数据等,线程就比较有用了。在这种情况下我们可以释放一些珍贵的资源如内存占用等等。

Python多线程

  Python中使用线程有两种方式:函数或者用类来包装线程对象。

1、函数式:调用thread模块中的start_new_thread()函数来产生新线程。语法如下:

_thread.start_new_thread ( function, args[, kwargs] )

参数说明:

  • function - 线程函数
  • args - 传递给线程函数的参数,他必须是个tuple类型
  • kwargs - 可选参数

2、使用Threading模块创建线程:直接从threading.Thread继承,然后重写init()方法和run方法

线程同步

  如果多个线程共同对某个数据修改,则可能出现不可预料的结果,为了保证数据的正确性,需要对多个线程进行同步。

  使用Thread对象的Lock和Rlock可以实现简单的线程同步,这两个对象都有acquire方法和release方法,对于那些需要每次只允许一个线程操作的数据,可以将其操作放到acquire和release方法之间。

Python多进程

可参考这篇博文,非常详细   Python多进程编程

1 0
原创粉丝点击