Android的套接字和多线程

Android的套接字和多线程,android,multithreading,sockets,Android,Multithreading,Sockets,我正在尝试允许Android应用程序中的两个线程相互通信。很简单,对吧?我有两条线索: 主线程控制用户 应用程序的接口(线程 (A) 另一个控制TCP套接字 (线程B) 目前,为了让线程A向线程B发送消息,我使用了一个带有静态实例数据和静态方法的类,线程A可以设置这些静态实例数据和静态方法。线程B使用一个循环来检查套接字上的传入数据,所以我使用同一个循环来检查补充类中的更改。这就是我如何将数据从线程A发送到线程B的方法。不过,我也希望线程B能够通知线程A(主用户界面线程)套接字已关闭,并执行

我正在尝试允许Android应用程序中的两个线程相互通信。很简单,对吧?我有两条线索:

  • 主线程控制用户 应用程序的接口(线程 (A)
  • 另一个控制TCP套接字 (线程B)

目前,为了让线程A向线程B发送消息,我使用了一个带有静态实例数据和静态方法的类,线程A可以设置这些静态实例数据和静态方法。线程B使用一个循环来检查套接字上的传入数据,所以我使用同一个循环来检查补充类中的更改。这就是我如何将数据从线程A发送到线程B的方法。不过,我也希望线程B能够通知线程A(主用户界面线程)套接字已关闭,并执行该操作。不幸的是,线程A没有使用任何循环来连续检查某些内容。所以我的问题是,如何通知线程A线程B的更改?我已经进行了搜索,发现Observer模式很有用,但我不确定是否可以将Observer模式引入现有设置中。任何帮助或指导思想都将不胜感激!谢谢。

在UI线程(线程a)中实例化一个处理程序,将该处理程序的引用传递给线程B。当您想通知线程a某件事情时,请创建一个消息对象,并使用该处理程序来
发送消息()

一个非常简单的模式示例

检查处理程序和消息类的官方文档

谷歌android处理器教程