目录:
定义-多线程是什么意思?
多线程是一种执行模型,它允许多个线程存在于进程的上下文中,以便它们独立执行但共享进程资源。 线程在其宿主进程的地址空间中维护与其执行相关的信息列表,包括优先级调度,异常处理程序,一组CPU寄存器以及堆栈状态。
多线程也称为线程。
Techopedia解释了多线程
通过允许主执行线程响应用户输入,线程在单处理器系统中可能很有用,而其他辅助线程可以执行不需要用户在后台干预的长时间运行的任务。 多处理器系统中的线程可在多个处理器之间真正并发执行线程,因此速度更快。 但是,它需要更仔细的编程,以避免出现非直觉的行为,例如赛车状况,死锁等。
操作系统通过两种方式使用线程:
- 抢占式多线程,其中上下文切换由操作系统控制。 上下文切换可能在不适当的时间执行,因此,高优先级线程可能会被低优先级线程间接抢占。
- 协作多线程,其中上下文切换由线程控制。 如果线程在等待资源释放时被阻塞,则可能导致死锁之类的问题。
Windows的32位和64位版本使用抢占式多线程,其中共享可用的处理器时间,以便所有线程获得相等的时间片,并以基于队列的模式进行服务。 在线程切换期间,已抢占线程的上下文被存储并重新装入队列中的下一个线程。 时间片是如此之短,以至于正在运行的线程似乎正在并行执行。
此定义是在计算机体系结构的上下文中编写的