【发布时间】:2016-11-03 05:34:51
【问题描述】:
我在 java 中遇到了线程问题。 这是我实现线程的类:
public class SensorAddClient extends Thread implements Runnable {
String[] args = new String[3];
@Override
public void run(){
try {
SensorClient.main(args);//this is the main function i wanna get executed on my args
} catch (IOException e) {
e.printStackTrace();
} catch (JSONException e) {
e.printStackTrace();
}}
然后当我需要激活线程时,我会使用以下 2 行来调用它:
SensorAddClient cl = new SensorAddClient();
cl.start();
我必须启动一个线程,它的运行只需要调用一个使用 args 执行的特定类,所以我调用该类的主函数,有什么方法可以使我调用的类的主函数得到用我想要的 args 执行? 所以我可以把元素放在上面吗: 字符串[] args = 新字符串[3];在执行线程运行之前?那可能吗 ? 任何帮助将不胜感激,在此先感谢您:)
【问题讨论】:
-
不太确定我是否理解您的问题,您到底遇到了什么问题?你想将参数传递给你的runnable吗?
-
您是否尝试在线程中运行您的入口点 (
public static main)? -
@user1875195 如果没有很好地解释,我很抱歉。我想说的是,当我启动线程时,我希望它能够在我调用 args 的那个字符串数组上添加值,所以我在 run 方法上调用的 SensorClient 的 main 获取了我选择的那些 args。但我不想使用 system.in。
-
@giannisf 很好,我试图通过一个线程运行一个类的主体,但我希望它与我想要的参数一起运行。因为实际上当我运行 SENSORCLIENT 类时,我从控制台输入了参数
-
@Anja.M 在哪里开始线程?
标签: java multithreading main