Java 如何在不同的线程中分配变量
我有以下方法:Java 如何在不同的线程中分配变量,java,multithreading,Java,Multithreading,我有以下方法: public boolean isMatch(List<T> sources, String captured) { boolean isMatch = false; return isMatch; } 线程应该执行一些操作。完成后,我需要将返回的布尔值赋给isMatch变量。我该怎么做 因为需要返回值,所以应该使用接口而不是Runnable。看看这些文件是怎么说的: 可调用接口类似于Runnable,因为两者都是 为其实例可能由执行的类
public boolean isMatch(List<T> sources, String captured) {
boolean isMatch = false;
return isMatch;
}
线程应该执行一些操作。完成后,我需要将返回的布尔值赋给
isMatch
变量。我该怎么做 因为需要返回值,所以应该使用接口而不是Runnable
。看看这些文件是怎么说的:
可调用接口类似于Runnable,因为两者都是
为其实例可能由执行的类而设计
另一条线。但是,Runnable不会返回结果和
无法引发已检查的异常
请注意,
可调用的
是通过提交的 您计划如何调用该方法,如何(以及何时)将结果告知调用方?因为isMatch
是一个局部变量,任何代码都不能从外部更改它。除此之外,isMatch(…)
method是否仍需要基于参数计算值?@luk2302该方法在另一个方法中调用,需要布尔结果为什么要使用新线程?我会看到两种可能性:使用未来并定期检查它,或者传递一些可以调用的函数/对象以将值放置在某处。谢谢。让我调查一下,不客气!如果回答了您的问题,请将此答案标记为已接受。
Runnable r = new Runnable() {
public void run() {
VERIFY();
}
};
Thread s = new Thread(r);
s.start();