美文网首页
协程与线程的区别

协程与线程的区别

作者: 清雪半夏 | 来源:发表于2018-12-22 19:04 被阅读0次

大多数开发者其实都弄不清协程与线程究竟有什么区别
包括我在内,刚接触时,也以为协程就是线程换个名字,就好像方法与函数那样
实质上,协程与线程是对偶概念
它们基于两种不同的假设而来
协程假设io所需的时间无限长,而cpu处理时间无限快
所以在请求io响应时,便将cpu切走
而线程则正好反过来,假设cpu处理时间无限重
直接用时钟中断打断运算切走
分清楚了,然后呢?
放到具体的应用上的话就是
你同时开多个协程去处理你游戏里的数万个npc是不合理的
你开了几十个线程爬取数据,然后让它们挤一块写入数据是不合理的
所以,理解了协程与线程的区别,才可以针对不同情况,使用合理的方案进行处理

相关文章

  • Unity协程(Coroutine)

    协程与线程的区别 1、协程不是线程,也不是异步执行的。2、协程和 MonoBehaviour 的 Update函数...

  • Go 协程调度的个人理解

    1.1 协程与进程的区别 首先,我理解的操作系统调度等级为 进程 —— 线程 —— 协程。其中进程和线程的区别是本...

  • Go语言学习笔记七(并发编程)

    协程机制 Golang 线程和协程的区别 备注:需要区分进程、线程(内核级线程)、协程(用户级线程)三个概念。 进...

  • 协程

    协程与线程 线程的调度是由操作系统负责,协程调度是程序自行负责 与线程相比,协程减少了无谓的操作系统切换 协程实际...

  • unity中Loom工具使用,关于线程的学习

    Loom在工程上的使用,类似于协程。 但是其与协程的区别在于,Loom里面可以做主线程的工作,但是协程不可以。典型...

  • misc.

    1. linux常用命令 top 2. go的协程与线程的区别 线程是操作系统的调度单元 协程是由go的runti...

  • Kotlin-协程

    协程的定义 协程可以理解为一种轻量级的线程。协程和线程的区别是线程是依靠操作系统的调度才能实现不同线程之间的切换的...

  • 协程、进程、线程

    1.进程与线程的区别,linux下2.协程是什么,优势是什么

  • 协程与线程的区别

    大多数开发者其实都弄不清协程与线程究竟有什么区别包括我在内,刚接触时,也以为协程就是线程换个名字,就好像方法与函数...

  • 异步-协程-yield in Python, 2022-06-1

    (2022.06.13 Mon)协程往往和线程做对比。协程也是并发的一种,协程与线程不同之处在于: 线程的调度由C...

网友评论

      本文标题:协程与线程的区别

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