TCP和UI之间的通信线程Java

时间:2018-06-06 22:35:45

标签: java multithreading server

我的应用程序的UI在主线程上运行,它创建一个等待连接的TCP侦听器线程,然后创建另一个将处理连接的线程。有没有办法TCP处理线程可以与我的主线程交互,设置UI的元素或调用任何并发运行的函数?

这是我主线程中的网络控制器,用于创建新的TCP侦听器

public void serverStart() throws IOException {
     Thread t = new Thread(new TCPEchoServer(this.getApp()));
     t.start();

我试过传递一个实例化的应用程序控制器,希望它可以与主线程进行交互但是我得到了java.lang.reflect.InvocationTargetException

这是创建ClientThread的TCP侦听器,它将处理来自我想要联系主线程的信息

while (true) {
        /*server will accept a connection and start a new "ClientThread" for that connection */
        try {
            Socket socket = serverSocket.accept();
            ClientThread clientThread = new ClientThread(socket, ++clientId,app);
            clientThread.start(); 
        } catch (Exception e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } 
    }

0 个答案:

没有答案