java - 我希望 main 方法打印出值 x,该值是由正在运行的线程返回的

标签 java multithreading

我希望 main 方法打印出值 x,该值是由正在运行的线程返回的。我该怎么做?希望我的问题有意义。

  import java.*;

  public class ServerStudentThread extends Thread 
  {

        public ServerStudentThread(Socket x) {  
       client = x;  
    }

        public void run() 
        {
          //Do something here and return an integer,
          // for example **x**
        }

        public static void main(String args[]) throws Exception {
           // ...
           // I want to print out x value here.  
           // But as you can see, x disappears after thread finish its job.
        }
}

最佳答案

您必须将 x 设置为 ServerStudentThread 类中的字段,而不是局部变量。然后在类中添加一个返回 x 的方法,例如 getValue()。在 main 方法中,创建线程后,运行它,调用类上的 getValue() 方法来打印获取 x 的值并打印它。

关于java - 我希望 main 方法打印出值 x,该值是由正在运行的线程返回的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4978345/

相关文章:

java - 执行器服务设置标志以停止线程

c# - 关于锁定策略的问题(C#/.NET 3.5 SP1)

java - java中倒计时锁存器的用法

java - 在 kotlin 的 intellij Android Studio 中禁用 Wild Cart 导入

java - 如何为现有的 Maven 项目创建 EAR 文件

java - 使用recyclerview 使用cardview 不显示底部导航数据

javascript - 等待变量存在然后在 javascript 中执行某些操作

java - Netty,如何实现在关闭 channel 之前发送响应(503)的 HTTP 连接限制器

java - 以某个对象开始的子列表

c - C 程序错误 ‘struct client_thread *’ 但参数类型为 ‘int’