- 主题:Go语言看着要完啊
The term “stackless coroutine” was coined by Simon Tatham1. He wrote a paper called “Coroutines in C” in 1999[1]. In this paper, he introduced the concept of stackless coroutines and described how they could be implemented in C[1].
I hope this helps. Let me know if you have any other questions.
--- bing chat
顺着bing chat 的链接:
whether a coroutine is able to suspend its execution from within nested function calls. Such a coroutine is stackful. One to the contrary is called stackless coroutine, where unless marked as coroutine, a regular function can't use keyword yield
bing chat说法对吗,还是在胡诌?请您批评指正。
【 在 lvsoft 的大作中提到: 】
: 我推测是来自于stackless python这个说法。
: 而stackless python最早是2006年提出的,最初源自CCP这个开发了EVE online游戏的公司。
: 他们在server端用python,当时提出stackless python也是为了解决他们遇到的问题。
: ...................
--
FROM 124.114.151.*
大佬出现,例行膜拜。
看了您的发言,有一种感想:会者不用,用者不会。
什么意思呢?对协程了解到您这个份上的人,就是不用协程(语言提供的关键字或API),也能很好的解决工程中的问题。而那些使用协程的人,并不需要完全懂,照着用能解决工程中的问题就行了。
【 在 leadu 的大作中提到: 】
: 我去,第一个这种简单问题都需要详细解释。我再用尽可能简单的语言重新描述一下
: 现在假设线程t执行了一个协程c1,协程c1内部有若干操作,其中有1次磁盘同步blocking写入,写入之后更新ui。很常见的场景,对吧
: 当线程t执行到第一次磁盘写入的时候,按照你之前的Jave Green thread说法,下面是编译器或运行时会隐式把这个同步写入转换成异步写入,异步写入开始之后,协程c1挂起,释放线程t。
: ...................
--
FROM 124.114.151.*
我人工审核了bing chat的回答后,认为值得拿出来请教 lvsoft 这位版友。想基于他对stackless python的了解,确定是否早于1999这篇paper。
bing chat引用的链接是wikipedia里coroutine词条,里面对stackful的定义很简单。
说到把确定变不确定的表述,您对coroutine的描述里,包含了很多似是而非让人困惑的点呢。不知是技术保密还是囿于中文语言表达技术观点的能力。清晰的是您基于汇编从头实现了一个coroutine库。
另一位版友 leadu 的回答,包含了一些清晰的观点。证实或证伪仍需要很多努力。
【 在 hgoldfish 的大作中提到: 】
: 不要拿 chatgpt 来污染版面了。以前 xiaoju 被大家喷就是因为他总是言之凿凿地胡绉。你从他和 chatgpt 的发言,既没法确定他说的是对,也没法确定他说的是错的。
: 在信息学的定义里面,信息就是把不确定的概率事件变成比较确定的概率事件。从这方面讲,chatgpt 几乎毫无信息含量。
:
--
FROM 36.46.16.*