我发现我经常在嵌套循环中使用静态字符串访问Python字典。我猜Python需要对每次访问的字符串进行散列,这可能会影响性能。例如: for d in large_list_of_dicts: v = d2['leaves'] Cython是否将这些静态字符串键散列为散列值如果是这样,这是否会显著提高此类循环的性能?
我对异步非常陌生,需要一些关于如何构建以下场景的建议。我有一个Cython扩展,它接受回调。前者在每次新事件到达时都会执行。但是,启动收集这些事件的机制是一种阻塞操作,即阻塞主线程。Cython扩展还接受asyncio.Queue,并从回调中调用put_nowait方法。现在,我希望设置队列的使用者来处理事件。loop.create_task(c(aioq))
# and keep on ini