java - 将整数传递给线程

标签 java multithreading

我对 Java 非常陌生。有问题的代码正在生成一个在特定时间执行某些操作的线程。该时间是从通过 http://ip:80/time=(int,sec) 接收它的主线程获取的
用户可以根据需要多次调用此 URL 并更新此时间。这意味着我必须将整数传递给线程,以便它可以在给定时间运行,例如当它发生变化时。我该怎么做?

以下是我的线程的定义和启动方式:

Thread launchLoadBalancer = new Thread() {
    public void run() {
        TimerTask timerTask = new TimerTask(serverSocket, //object for extra data);
        try {
            timerTask.start();
        } catch (IOException e) {

        }
    }
};
launchtimerTask.start();

我必须从新的TimerTask传递整数。我可以修改另一端的构造函数。如何正确传递整数?

最佳答案

创建一个扩展 Thread 的新类,并具有一个采用 int 的构造函数。

class LaunchLoadBalancerThread extends Thread {
    private int i;
    public LaunchLoadBalancerThread(int i) {
        this.i = i;
    }
    public void run() {
        TimerTask timerTask = new TimerTask(serverSocket, //object for extra data);
        try {
            timerTask.start();
        } catch (IOException e) {

        }
    }
}

然后,您可以使用该类(将 i 替换为您的号码):

Thread launchLoadBalancer = new LaunchLoadBalancerThread(i);
launchLoadBalancer.start();

关于java - 将整数传递给线程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35329604/

相关文章:

java - 当 box2d 实体数量超过 300 时,在移动设备上的性能非常低

java - 为什么我的 println 不工作?

java - 如何将投影应用于成员对象的特定字段?

Java 代码注释最佳实践

安卓 : Update on UI Thread very fast

java - Google map 无法获取我的 if 语句以获得权限

c# - 取消已初始化并在另一个事件处理程序方法中运行的任务

java - Bruce Eckel 《Java 思维》第 4 版,ThreadLocal 变量持有者

multithreading - Delphi - 将线程与框架同步

c# - C#中issue/response串口处理