繁体   English   中英

GAE / J异步数据存储区API:如何等效于UNIX选择?

[英]GAE/J Async Datastore API: how to do the equivalent of a UNIX select?

Java Google App Engine异步数据存储区API提供了一种方法来进行异步读取,然后稍后询问是否完成以及是否需要,以可选的超时对其进行阻止。 但是,我想做的一件事我找不到一种方法,那就是等同于UNIX select。

也就是说,我要:

  1. 发出一堆,例如,读取到数据存储,然后

  2. 只要睡觉,直到其中任何一个回来。

据我所知,该API要求我仅遍历异步读取返回的Futures并询问isDone(),直到其中一个声明为true为止。 这会浪费我付出的CPU时间,无济于事。

我是否缺少某些东西,还是没有办法使用GAE / J Async Datastore API获得UNIX选择的效果?

丹和我离线讨论了这个问题。 简短的答案是,目前尚无直接方法可以执行此操作,但是应用程序引擎中的java和python都支持线程化,因此您可以轻松地在userland中执行此操作。 更重要的是,go的频道和选择的语言原语可以做到这一点,因此绝对值得一看。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM