V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  waibunleung  ›  全部回复第 26 页 / 共 32 页
回复总数  630
1 ... 18  19  20  21  22  23  24  25  26  27 ... 32  
2019-07-23 09:44:42 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@congeec 不要有这样的想法呀,可能只是我反应比较慢一点。其实大家对我的帮助很多了,真的谢谢你们
2019-07-22 21:17:42 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@wwqgtxx 说实话,发现了更核心点的代码应该是在 call_soon 中传进去的 self.__step 这个函数中,有一段:
try:
if exc is None:
# We use the `send` method directly, because coroutines
# don't have `__iter__` and `__next__` methods.
result = coro.send(None)
else:
result = coro.throw(exc)
except StopIteration as exc:
if self._must_cancel:
# Task is cancelled right before coro stops.
self._must_cancel = False
super().set_exception(futures.CancelledError())
else:
super().set_result(exc.value)

里面的 coro.send(None)是启动协程的关键,#29 有提到了
另外你之前的答案我也有看,但是一下子没理解下来,现在打算重新梳理一下,无论如何,十分感谢你对我的帮助~
2019-07-22 19:54:02 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@ilucio 不知道你是看了源码还是看了程序输出得出来的结论,我也不能确定你说的就是对的
2019-07-22 19:48:05 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@fzzff 好的谢谢你,我试一下
2019-07-22 19:45:41 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@cxyfreedom 相关注释我也看到了,但是由于没有 C 基础,就先不勉强自己,谢谢你啦
2019-07-22 18:59:00 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@meik2333 谢谢你啦~
2019-07-22 18:58:40 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@fzzff 嗯嗯,我会努力的。同时也祝愿您下次评论的时候除了这种没有营养的话也多能说说有建设性的东西呢~
可以接受批评,但拒绝无实际帮助的评论呢,亲
2019-07-22 18:55:59 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@dbow 按照你的意思,结合代码二,什么时候会进入下一批调度?
2019-07-22 18:52:45 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@guokeke 创建好 handle events 之后是要等到下一次循环的时候才开始执行吧?什么时候会进入到事件循环的下一轮?
2019-07-22 18:50:36 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@dbow 老哥我真的看不到图...
2019-07-22 18:50:09 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@guokeke 直接贴应该可以吧? github 的都可以发?
2019-07-22 18:49:23 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@dbow 还是看不到的
2019-07-22 18:46:27 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@dbow 看不到你的图片...
2019-07-22 18:44:00 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@so1n 我用的 pycharm 查看的源码,但是不知道它为什么跳不到你们说的 call_soon 的函数那里去,我点 create_task 之后,跳去了 task.pyi 而不是 task.py ,task.pyi 的__init__方法只有一行...是我看得有问题吗。。。
2019-07-22 18:41:35 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@BBCCBB 我已经看了不少资料了...你看看我上个问题,你肯定又没仔细看,当然会费劲...
2019-07-22 18:37:01 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@guokeke 可以把你的查看路径发一下给我吗?从哪个函数跳到哪个函数这样的路径
2019-07-22 18:35:36 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@BBCCBB 按照你的说法,async 函数也会被转换成 task 而放到 eventloop 中,那其实代码一和代码二的 async 函数最后都会变成 task 才被加进 event loop,那为什么代码一是顺序的,代码二不是?
2019-07-22 18:33:00 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@guokeke 所以再 task 初始化的时候,那个__init__函数你看了吗?就几行代码...
2019-07-22 18:32:05 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@so1n 我还是同样的问题,我能看到注释说 Schedule the execution of a coroutine object in a spawn task.
Return a Task object.
问题是 Schedule the execution of a coroutine object in a spawn task.这个 Schedule 在哪里体现的?
2019-07-22 18:28:21 +08:00
回复了 waibunleung 创建的主题 Python 不死心,再来问一遍关于 Python 的 asyncio 问题
@guokeke 我翻源码的时候也看到了这里,但是 create_task 这个函数看上去只是返回了创建的 task 对象,这个函数的注释是"""Schedule a coroutine object.
Return a task object.
"""
请问 Schedule a coroutine object.怎么体现出来?在哪里 schedule 的?
1 ... 18  19  20  21  22  23  24  25  26  27 ... 32  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5391 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 18ms · UTC 01:43 · PVG 09:43 · LAX 17:43 · JFK 20:43
Developed with CodeLauncher
♥ Do have faith in what you're doing.