为什么在asnycio中出现例外情况要迟到或根本不出现?

阿尔特姆·塞利瓦诺夫(Artem Selivanov)

有时在使用async/await语法后,我看到程序不再正常工作。但是也没有任何例外。例如:

async def my_func(self):
   async with self.engine() as conn:
      print('step1')  # step1 shows in console
      await conn.exceute("INSERT INTO bla-bla")
      print('step2')  # I can't watch 'step2', and no any exceptions caughted to console

但是,如果我使用try/except语法异常,则可以捕获:

async def my_func(self):
   async with self.engine() as conn:
      print('step1')  # step1 shows in console
      try:
          await conn.exceute("INSERT INTO bla-bla")
      except Exception as e:
          print_exc()  # only by this way I can see whats wrong
      print('step2')

所以。我可以立即看到异常而不被抓住吗?或者我只能使用步骤并调试所有内容?

安德鲁·斯维特洛夫(Andrew Svetlov)

引发异常,展开堆栈。

真正的问题是:您使用什么来运行协程?

loop.run_until_complete(my_func())将按照您的期望处理异常。其他使用方案可能会有所不同。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

为什么不出现

来自分类Dev

JFrame有时根本不出现?

来自分类Dev

导航栏弹出窗口根本不出现

来自分类Dev

为什么标题不出现

来自分类Dev

为什么不出现FloatingActionButton?

来自分类Dev

提取可能多次出现或根本不出现的字符串元素

来自分类Dev

为什么Grails会删除我的例外情况?

来自分类Dev

svg 文本不出现

来自分类Dev

为什么我的jframe不出现?

来自分类Dev

Viewport.el.mask根本不在javascript中出现,太快了吗?

来自分类Dev

Viewport.el.mask根本不在javascript中出现,太快了吗?

来自分类Dev

添加Google Play服务时出现了意外的最高水平例外情况

来自分类Dev

为什么switch语句中不是默认值的每种情况都属于例外情况?

来自分类Dev

为什么在MongoDB中出现UserNotFound错误?

来自分类Dev

为什么我的活动中出现NetworkOnMainThreadException?

来自分类Dev

为什么在此代码中出现IndexOutOfRangeException?

来自分类Dev

为什么在C中出现此段错误?

来自分类Dev

为什么在SOLR中出现EarlyTerminateCollectorException?

来自分类Dev

为什么在此导入中出现“ NameError”?

来自分类Dev

为什么在MongoDB中出现UserNotFound错误?

来自分类Dev

为什么在此脚本中出现错误?

来自分类Dev

为什么在liferay中出现NullPointerException?

来自分类Dev

为什么在验收测试中出现错误?

来自分类Dev

URL中出现错误为什么?

来自分类Dev

getClassLoader()。getResource()抛出NullPointerException吗?为什么不出现FileNotFoundException?

来自分类Dev

为什么动画不出现在模态/灯箱中?

来自分类Dev

为什么glxgears不出现在xlsclients中?

来自分类Dev

为什么我的ng-message不出现?

来自分类Dev

为什么Java可以在Eclipse中出现编译时错误的情况下运行

Related 相关文章

  1. 1

    为什么不出现

  2. 2

    JFrame有时根本不出现?

  3. 3

    导航栏弹出窗口根本不出现

  4. 4

    为什么标题不出现

  5. 5

    为什么不出现FloatingActionButton?

  6. 6

    提取可能多次出现或根本不出现的字符串元素

  7. 7

    为什么Grails会删除我的例外情况?

  8. 8

    svg 文本不出现

  9. 9

    为什么我的jframe不出现?

  10. 10

    Viewport.el.mask根本不在javascript中出现,太快了吗?

  11. 11

    Viewport.el.mask根本不在javascript中出现,太快了吗?

  12. 12

    添加Google Play服务时出现了意外的最高水平例外情况

  13. 13

    为什么switch语句中不是默认值的每种情况都属于例外情况?

  14. 14

    为什么在MongoDB中出现UserNotFound错误?

  15. 15

    为什么我的活动中出现NetworkOnMainThreadException?

  16. 16

    为什么在此代码中出现IndexOutOfRangeException?

  17. 17

    为什么在C中出现此段错误?

  18. 18

    为什么在SOLR中出现EarlyTerminateCollectorException?

  19. 19

    为什么在此导入中出现“ NameError”?

  20. 20

    为什么在MongoDB中出现UserNotFound错误?

  21. 21

    为什么在此脚本中出现错误?

  22. 22

    为什么在liferay中出现NullPointerException?

  23. 23

    为什么在验收测试中出现错误?

  24. 24

    URL中出现错误为什么?

  25. 25

    getClassLoader()。getResource()抛出NullPointerException吗?为什么不出现FileNotFoundException?

  26. 26

    为什么动画不出现在模态/灯箱中?

  27. 27

    为什么glxgears不出现在xlsclients中?

  28. 28

    为什么我的ng-message不出现?

  29. 29

    为什么Java可以在Eclipse中出现编译时错误的情况下运行

热门标签

归档