我正在使用play框架来实现REST API服务。
在一个函数中,我使用java异步库与另一个服务对话,它返回一个java.util.concurrent.Future
现在,我如何使它成为
play.libs.F.Promise。
我发现
play.libs.Akka.asPromise(scala.concurrent.Future)
编辑临时解决方案:以下是我现在正在使用的解决方案:
Future<T> future = asyncGetTheFuture();
Promise<T> promise = Akka.future(new JFutureToPromise<T>(tempFuture));
随着
class JFutureToPromise<T> implements Callable<T> {
final Future<T> future;
final long time;
final TimeUnit unit;
private JFutureToPromise(Future<T> future, long time, TimeUnit unit) {
this.future = future;
this.time = time;
this.unit = unit;
}
private JFutureToPromise(Future<T> future) {
this(future, 10L, TimeUnit.SECONDS);
}
@Override
public T call() throws Exception {
return future.get(time, unit);
}
}
没有办法非阻塞/非污染地将任意j.u.c.Future转换为异步Future/Promise。试试看自己:)
我有一个关于TestFX4的问题。有一个GUI对象,我想在其中将文本设置为TextField(“#SearchField”)。 它在TestFX3中的工作方式如下:
问题内容: 我试图或多或少地使用Java API 重新创建此示例。 我认为我所需要的只是向索引添加映射,但是Java API文档尚不清楚如何执行此操作。 请告诉我如何用Java创建映射,该映射与文档中的示例等效: 这是我的代码: 问题答案: 终于,经过一天的谷歌搜索获得了回报。坦率地说,用于Elasticsearch的Java API文档可以使用一些端到端示例,更不用说JavaDoc … 这是一个
我创建了一个选择菜单,要求您输入要运行的命令,我是通过使用和语句来完成的,但是当命令(if语句)完成时,我希望它们转到行询问运行哪个命令。这是我目前的代码(现在我没有这样的代码): 如果有人能帮忙,那就太棒了,谢谢。
问题内容: 我已经使用pip在我的virtualenv中安装了matplotlib。刚开始时是失败的,但是我这样做之后,安装顺利进行。 这是我的工作(在我的git仓库根文件夹中): 然后,我通过使用制作了requirements.txt 。结果如下: 当我尝试部署应用程序时发生了问题: 似乎heroku服务器无法正确安装matplotlib。 当我这样做时,可能不会被点子记录。 Matplotli
现在,让我们假设C++11。它介绍了、;据我所知,它们是和的“别名”,其净效果是,在运行时,您声明的字符串常量(使用和)由分别表示UTF-16或UTF-32代码单元的16bit或32bit实体组成。还有(后者的类型是什么,因为它没有固定长度?)。 其他重要的一点:UTF-16有两个变体,即LE和BE;java确实是,因为在字节码级别,一切都是。是否依赖于代码中的endianness? 但是,即使经
问题内容: 这工作正常: 但这不是-因为bar.charAt(x)返回一个char: 似乎从char中减去‘0’会将其强制转换为整数。 为什么或如何减去字符串“ 0”(或它是一个字符?)将另一个字符转换为整数? 问题答案: 这是一个聪明的把戏。字符实际上与短裤的类型/长度相同。现在,当您有一个表示ASCII / Unicode数字的字符(如“ 1”),并从中减去最小的ASCII / Unicode