协程就是有这个妙用。很少有人注意到协程是可以用于管理对象生命周期的。
这东西现在很少有人这么用:一是主流语言的协程使用都很不方便,除了 go 把协程作为语言核心特性,其它语言都把协程做成锦上添花的东西。而 golang 的协程被包装过,应该叫 CSP,类似于 ACTOR,不是简单的协程。二是主流语言只有 C++ 才搞手动的内存资源管理,犯不着折腾这事。
协程是超轻量的,创建一个协程基本就是一条 mmap() 调用而已。滥用又怎么样呢。而且你这里注意,mmap() 本身就是一种内存管理。把协程看作是一种新型的内存管理方式是合情合理的。
【 在 ziqin 的大作中提到: 】
: 所以你的意思是,因为懒得管理资源生命周期,所以一股脑干脆直接用协程
: 这不是滥用又是什么
: 协程这种模式,不是为了给你简化资源的管理的,而是为了在某些真的需要很高性能但又不得不异步的情况下采用的,省的就是user层面的资源存取和context资源存取的速度。
: ...................
--
FROM 47.243.39.*