在 ndb tasklet 中使用 images.get_serving_url_async() 是否安全?

2024-05-25

NDB 小线程和yield是执行异步/并行代码的好方法。然而,从文档中还不清楚这种机制是否可以安全地与非 ndb 异步函数一起使用,例如images.get_serving_url_async().

The NDB 异步操作文档页面 https://developers.google.com/appengine/docs/python/ndb/async#urlfetch有一个非常小的部分关于使用 NDB 上下文自己的版本urlfetch_async(),其中注明(强调我的):

URL Fetch 服务有自己的异步请求 API。很好,但与 NDB tasklet 一起使用并不总是那么容易.

我不太清楚为什么它“并不总是很容易与 NDB tasklet 一起使用”,这让我想知道同样的说法是否适用于images.get_serving_url_async().

所以我的问题是:如果我这样做,我会遇到麻烦吗?

@ndb.tasklet
def foo():
    url = yield images.get_serving_url_async(image_key)

没事。该yield将等待RPC并允许其他tasklet在等待时运行。关于 urlfetch 的评论只是关于它笨拙的 API。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 ndb tasklet 中使用 images.get_serving_url_async() 是否安全? 的相关文章

随机推荐

  • PHP Web 应用程序中的 Ace 编辑器

    我正在制作一个小型网络应用程序 允许用户通过以下方式提交 html css 和 javascript 内容王牌编辑器 http ace ajax org 在此编辑器中 将存储的内容回显到编辑器中就足够了 但是无论如何我找不到将用户输入提交到
  • 我想了解 NfcV ISO-15639 的操作

    我是 NFC 技术新手 我很难理解如何操作块 byte cmd new byte byte 0x20 FLAG byte 0x21 WRITE SINGLE BLOCK COMMAND byte 0x00 byte 0x00 byte 0x
  • 如何在 jQuery 中获取选择框选项值

    如果我有这样的代码 如何获取 jQuery 中选项选择框的值
  • 如何使用开发者工具查找 Chrome 中的按钮或元素运行的代码

    我正在使用 Chrome 和我自己的网站 我从内部了解到的情况 1 我有一个表格 人们可以通过单击这个橙色图像按钮进行注册 2 我检查了它 这就是全部 img class formSend src images botoninscribir
  • 使用应用程序上下文滑动图像加载

    我在我的 Android 应用程序中使用 glide 进行图像加载 为了避免任何崩溃 我正在使用应用程序上下文加载图像 这对应用程序和内存的性能有何影响 这对应用程序和内存的性能有何影响 Glide提供了这么多 with 方法是有原因的 它
  • Applescript 和“开头为”运算符

    有没有办法检查 在applescript中 是否有列表 或html文本块 starts with任意数量的值 示例 检查单个值 if foobar starts with p then do something awesome here e
  • 如何在mapbox-gl中自定义集群图标?

    我想在我的地图中实现聚类 我找到了简单聚类的示例Mapbox 集群示例 https www mapbox com mapbox gl js example cluster but 我的代码在这里 http pastebin com x2kF
  • Struts 2 Action 标签,检索属性

    如果我有一个典型的设置 其中包含转发到 JSP 的操作 我会像这样请求我的属性
  • 错误:找不到进程“node.exe”

    完整的错误是 ERROR The process node exe not found The filename directory name or volume label syntax is incorrect Finished in
  • 如何为 pageAction 添加点击?

    第一次延期 请友善 我的目标是在用户访问来自特定域的页面时提供一个选项 以提供启动另一个页面的选项 该页面使用所访问页面的域名的一部分作为变量 下面的代码执行了我想要的操作 但它没有提供该操作作为选项 它只是执行 当访问与域匹配的页面时 它
  • 调用 cat 时 shell 脚本挂起

    我有一个 shell 脚本 它通过电子邮件向我发送通过 crontasks 遇到的错误 如下所示 exec gt output cat shopt s nocasematch if output error output warning t
  • 文件所有者图标

    我花了太多时间寻找文件所有者图标以单击拖动到文本字段以将变量分配给该字段 然后我突然意识到该图标只显示在 nib 文件上 不是故事板 那么将变量分配给文本字段的选项是什么 硬编码 我想做的是在主屏幕上的两个文本字段中显示当前位置的连续坐标
  • Safari 中透明颜色会发生什么情况?

    有一个块 其中接近末尾的文本逐渐消失 这是使用以下方法完成的 after 给定linear gradient从透明色到背景色 最近注意到 在当前版本的浏览器中 除了 safari 之外 一切都很好 在第 11 版中 情况太糟糕了 Autop
  • 如何将 RFC 2822 日期/时间解析为 Python 日期时间?

    我有 RFC 2822 指定的表格日期 比如说Fri 15 May 2009 17 58 28 0000 作为字符串 有没有一种快速和 或标准的方法来将其作为datetimePython 2 5 中的对象 我尝试生成 strptime 格式
  • 忽略控制台应用程序中的 Web 浏览器 SSL 安全警报

    我正在创建一个能够远程捕获网站屏幕截图的控制台应用程序 除了我无法避免证书错误之外 一切都正常 每次我收到无法通过的弹出消息 我尝试使用 ServicePointManager ServerCertificateValidationCall
  • 从 SinkWriter 或 ICodecAPI 或 IMFTransform 获取编码器名称

    我使用 SinkWriter 来使用媒体基础对视频进行编码 初始化 SinkWriter 后 我想获取它使用的底层编码器 并打印出它的名称 这样我就可以看到它使用的编码器 就我而言 编码器很可能是H 264 视频编码器 http msdn
  • 维克斯。相同版本不同产品代码如何进行重大升级?

    基本上我需要改变这种行为 安装具有相同版本和升级代码的产品 但 不同的产品代码 是允许的 并被 MSI 视为两种产品 我需要将其作为重大升级进行威胁 因此 在 v 1 0 1 旧版本 不同的 ProductCode 上安装 v 1 0 1
  • 全屏模式下的 XBAP

    我想以全屏模式运行 XBAP 有没有办法让IE全屏打开XBAP 由于我以完全信任的方式运行 每当用户单击全屏按钮时 我都会使用 Process Start 方法以 kiosk 模式打开 IE 以下代码解决了我的问题 Process Star
  • IdentityServer3 与 ServiceStack 和 MVC 客户端

    我是 IdentityServer3 的新手 刚刚开始设置它 似乎进展顺利 我一直在为 MVC 应用程序开发混合流程 类似于 Kevin Dockx 的 Pluralsight 课程中所示的内容 http www pluralsight c
  • 在 ndb tasklet 中使用 images.get_serving_url_async() 是否安全?

    NDB 小线程和yield是执行异步 并行代码的好方法 然而 从文档中还不清楚这种机制是否可以安全地与非 ndb 异步函数一起使用 例如images get serving url async The NDB 异步操作文档页面 https