美文网首页
go 协程和线程的区别

go 协程和线程的区别

作者: 西门吹牛々 | 来源:发表于2019-01-17 10:47 被阅读25次
    1. 内存消耗方面
    • 一个线程的内存在 MB 级别,而协程只需要 KB 级别。
      • goroutine:2KB
      • 线程:1-8MB
      • 初始化为2KB,最大可扩张到1GB。
    1. 线程和 goroutine 切换调度开销方面
      • 线程/goroutine 切换开销方面,goroutine 远比线程小
      • 线程:涉及模式切换(从用户态切换到内核态)、16个寄存器、PC、SP...等寄存器的刷新等。
      • goroutine:只有三个寄存器的值修改 - PC / SP / DX.

    相关文章

      网友评论

          本文标题:go 协程和线程的区别

          本文链接:https://www.haomeiwen.com/subject/ltbfqqtx.html