线程比进程更加轻量 而且一个进程的线程 共享资源 虽然有并发问题 可以采取 信号量 锁, 远比父子进程通信开销小 更容易 上下文切换资源的消耗 创建和销毁成本
为什么父子进程通信开销大? 进程通信的方式 有管道 消息队列 共享内存 即使是最方便的共享内存 也是在内核态开辟的空间 多个进程访问这个空间 需要进行内核态和用户态的切换以及资源的刷取
线程比进程更加轻量 而且一个进程的线程 共享资源 虽然有并发问题 可以采取 信号量 锁, 远比父子进程通信开销小 更容易 上下文切换资源的消耗 创建和销毁成本
为什么父子进程通信开销大? 进程通信的方式 有管道 消息队列 共享内存 即使是最方便的共享内存 也是在内核态开辟的空间 多个进程访问这个空间 需要进行内核态和用户态的切换以及资源的刷取