java - 在java中实现一个事件处理程序并通过jni接口(interface)将其传递给scip

标签 java java-native-interface scip

我通过 Jni 接口(interface)使用 Java api 中的 Scip 求解器。

我想实现一个事件处理程序(最好用java),这样

  1. 我可以获得一些我想要显示的有关求解进度的信息

  2. 能够通过调用 SCIPinterruptSolve(SCIP *scip) 来中断求解。

事件处理程序在 c 中实现,并通过以下 native 方法传递给 scip

SCIP_RETCODE SCIPincludeEventhdlrBasic  (   SCIP *  scip,
SCIP_EVENTHDLR **   eventhdlrptr,
const char *    name,
const char *    desc,
SCIP_DECL_EVENTEXEC((*eventexec))   ,
SCIP_EVENTHDLRDATA *    eventhdlrdata 
)

我可以用java实现事件处理程序吗?

如何通过 jni 接口(interface)将用 java 编写的事件处理程序传递给 scip?

注意,jni接口(interface)中没有SCIPincludeEventhdlrBasic对应的方法。

最佳答案

不幸的是,这对于 SCIP JNI 接口(interface)是不可能的,因为它不支持回调。

关于java - 在java中实现一个事件处理程序并通过jni接口(interface)将其传递给scip,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37318306/

相关文章:

java - hibernate.id.new_generator_mappings被glassfish忽略了吗?

java - 在 Jenkins 中添加 choice 参数,列出 bash 命令给出的选项

java - 使用 JAVA JNI 和 C++ 进行通用调用

android - 覆盖 SWIG 类型转换

java - JNI : Invoke JAVA method from C++, 返回对象、引用和 GC

c++ - SCIP中的分支和价格

java - 如何阻止谷歌地图不断以我的位置重新居中

java - 在 Spring 3.1 中配置 JDO?

python - 如何在 ORTOOLS 中使用 SCIP 进行 MILP [python]

c++ - SCIP 及分行及价格