首页   注册   登录
 ipwx 最近的时间轴更新
ipwx

ipwx

V2EX 第 86855 号会员,加入于 2014-12-15 23:19:35 +08:00
今日活跃度排名 3541
ipwx 最近回复了
XYProblem
1 天前
回复了 ybw 创建的主题 Apple macOS 的软件安装方式是不是太古老了
没有人阻止应用作者写个卸载脚本啊(手动狗头)
我觉得也只有自己撸一个了。。。

@blodside 这个我觉得问题不大,你可以把其他代码放进 thread executor 或者 process executor 里面。反正你其他依赖不支持携程,理论上不也不支持 Twisted callback 么( doge )
2 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
@Ritter 异常无论是不是向上传播,q.task_done 都不能执行了呀,然后 join() 一定会卡住啊。。。

try:
...
finally:
q.task_done()
3 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
@Ritter run_in_executor 本来就是把一个阻塞函数扔到别的线程里面执行,然后把结果拿出来的。

def fn():
....something to do

await loop.run_in_executor(fn)
3 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
@Ritter 好吧我看了一眼文档,它当真会自动把 coroutine 变成 Task 给 schedule 起来。

"If any awaitable in aws is a coroutine, it is automatically scheduled as a Task."
3 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
顺便 loop.create_task 就不用 await 了
3 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
=== 我发现楼主还有个问题,在 async def run 里面。

他只创建了 consumer = asyncio.gather(...),但是没有勒令 consumer 进入执行啊?按照道理 asyncio.gather 并不具有执行一个 coroutine 的特性啊,只有 await 才能保证让一个 coroutine 进入运行状态啊?

楼主你得用 loop.create_task 把一个 coroutine 强行进入后台运行状态才对吧?
3 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
@Ritter 楼主也没放日志(差评)。

不过 async def put 这个函数问题太大了,怎么都会出问题的。
3 天前
回复了 Ritter 创建的主题 Python 大佬们 我这协程写的有毛病吗?
除了 readFromFolder, f.read() 也是阻塞的,也得放在 executor 里面
关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   2760 人在线   最高记录 5168   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.3 · 13ms · UTC 08:13 · PVG 16:13 · LAX 00:13 · JFK 03:13
♥ Do have faith in what you're doing.