Linux 拨号vps windows公众号手机端

Lua的线程与操作系统的线程有什么区别

lewis 7年前 (2018-04-12) 阅读数 9 #程序编程
文章标签 Lua

Lua的线程与操作系统的线程有一些重要区别:

  1. 调度方式:Lua的线程是协同式线程,由Lua虚拟机自行调度,而操作系统的线程是由操作系统内核调度的。

  2. 调度开销:Lua的线程在切换时只需要保存和恢复Lua虚拟机的状态,开销较小;而操作系统的线程在切换时需要保存和恢复整个线程的状态,开销较大。

  3. 并发性:Lua的线程是单线程的,只能在一个时间点运行一个线程;而操作系统的线程可以同时运行多个线程,实现真正的并发性。

  4. 内存占用:Lua的线程的内存占用较小,因为每个线程只需要保存虚拟机状态;而操作系统的线程的内存占用较大,因为每个线程都需要独立的堆栈和寄存器等资源。

总的来说,Lua的线程更适合于轻量级的并发任务,而操作系统的线程更适合于重量级的并发任务。

版权声明

本文仅代表作者观点,不代表米安网络立场。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门