- 多线程模型 (Multithreaded model)
- 多进程模型 (Multiprocess model)
- 协程模型 (Coroutine model)
- Actor模型 (Actor model)
- 信号量模型 (Semaphore model)
- 条件变量模型 (Condition variable model)
- 读写锁模型 (Read-write lock model)
- 线程局部存储模型 (Thread-local storage model)
- 异步IO模型 (Asynchronous IO model)
- 数据流模型 (Dataflow model)
一、多线程模型
在单个进程中,多个线程并发执行,共享进程的资源,如内存等。
Java中的java.lang.Thread类和java.util.concurrent包提供了多线程编程的支持。
二、多进程模型
在操作系统中,每个进程都有自己的地址空间和系统资源,如文件描述符等。
多个进程可以并发执行,通过进程间通信(IPC)来共享数据。
Java中的java.lang.ProcessBuilder类和java.lang.Runtime类提供了多进程编程的支持。
三、协程模型
协程是一种轻量级的线程,可以在单个线程中实现并发。
协程通过yield语句实现暂停和恢复执行,可以避免线程切换的