我正在尝试通过使用带有 GWT 的 VKthread 在客户端实现多线程,
我的问题是我需要将 java 方法的引用传递给 java 脚本中的线程调用程序,以便在执行线程时调用 java 方法
这是我的代码:
static JavaScriptObject sum() {
return flipName();
}
static native JavaScriptObject flipName() /*-{
console.log("asd");
}-*/;
native String Excec() /*-{
$wnd.vkthread
.exec(
@com.tradeos.b2b.industries.freight.data.freightTrade.marketplace.builders.client.MarketPlaceQuoteResultsPanel::sum()(), //function to execute in a threads
[], //arguments for the function
function(data) { // callback function;
var foo = data;
console.log(foo);
});
}-*/;
如果我将 javascript 方法传递给 $wnd.vkthread 它工作正常,但是当尝试传递 java 方法时它不起作用!
最佳答案
在您的代码段中,您正在调用您的方法 (::sum()()
),以获取对该方法的引用,删除最后一对括号.您还应该将其包装到 $entry
中:
$wnd.vkthread
.exec(
$entry(@com.tradeos.b2b.industries.freight.data.freightTrade.marketplace.builders.client.MarketPlaceQuoteResultsPanel::sum()), //function to execute in a threads
[], //arguments for the function
function(data) { // callback function;
var foo = data;
console.log(foo);
});
关于javascript - 是否可以将 java 方法的引用传递给 GWT 中的 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39314531/