如何将参数传递给线程[重复](How to pass an argument to a thread [duplicate])
这个问题在这里已经有了答案:
如何将参数传递给Java线程? 16个答案假设我想传递以下变量
String foo = "hello world";作为以下线程的参数
new Thread(new Runnable() { @Override public void run() { // SOME CODE HERE REQUIRES VARIABLE } }).start();有人可以解释一下如何做到这一点。
谢谢。
This question already has an answer here:
How can I pass a parameter to a Java Thread? 18 answersAssume I would like to pass the following variable
String foo = "hello world";as an argument to the following thread
new Thread(new Runnable() { @Override public void run() { // SOME CODE HERE REQUIRES VARIABLE } }).start();Can someone please explain how to do this.
Thanks.
最满意答案
声明为final局部变量将在线程中可见:
void doSomething(final String foo) { new Thread(new Runnable() { @Override public void run() { // SOME CODE HERE REQUIRES VARIABLE System.out.println(foo); } }).start(); }Local variables that are declared as final will be visible in the thread:
void doSomething(final String foo) { new Thread(new Runnable() { @Override public void run() { // SOME CODE HERE REQUIRES VARIABLE System.out.println(foo); } }).start(); }更多推荐
发布评论