学习python仅此一篇就够了(多进程编程)

多线程并行执行概念

进程,线程

进程:就是一个程序,运行在系统之上,那么便称之为这个程序为一个运行进程,并分配进程ID方便系统管理。

线程:线程是归属于进程的,一个进程可以开启多个线程,执行不同的工作,是进程的实际工作最小单位。

进程就好比一家公司,是操作系统对程序进行管理的单位。

线程就好比公司的员工,进程可以有多个线程,是进程的实际工作者。

注意:进程之间内存是隔离的,即不同的进程拥有各自的内存空间。这就类似于不同的公司拥有不同的办公场所;

线程之间是内存共享的,线程是属于进程的,一个进程内的多个线程之间是共享这个进程所拥有的内存空间的。

并行执行

指的是同一时间做不同的工作。

进程之间就是并行执行的,操作系统可以同时运行好多程序,这些程序都是在并行执行。线程也是可以并行执行的。

多线程编程

threading模块
import threading
thread_obj = threading.Thread([group [, target [, name [ , args [, kwargs]]]]])
-group:暂时无用,未来功能的预留参数
-target:执行的目标任务名
-args:以元组方式给执行任务传参
-kwargs:以字典方式给执行任务传参
-name:线程名
import time
import threading

def sing():
    while True:
        print("我在唱歌")
        time.sleep(1)

def dance():
    while True:
        print("我在跳舞")
        time.sleep(1)


if __name__ == '__main__':

    #创建一个唱歌的线程
    sing_thread = threading.Thread(target=sing)
    #创建一个跳舞线程
    dance_thread = threading.Thread(target=dance)

    sing_thread.start()
    dance_thread.start()
import time
import threading

def sing(msg):
    while True:
        print(msg)
        time.sleep(1)

def dance(msg):
    while True:
        print(msg)
        time.sleep(1)


if __name__ == '__main__':

    #创建一个唱歌的线程
    sing_thread = threading.Thread(target=sing, args=("我要唱歌好好",))
    #创建一个跳舞线程
    dance_thread = threading.Thread(target=dance, kwargs={"msg": "我在跳舞"})

    sing_thread.start()
    dance_thread.start()

你可能感兴趣的:(python,学习,服务器,python)