java菜鸟,求教两个关于Socket通信的问题
1个回答
展开全部
第一个问题,socket其实就好比打电话时候的电话,“打电话的人”和”接电话的人“都要有“电话”才能通信吧?socket1和socket2就是这样的“电话”。那么你也许要问那ServerSocket又是个啥?你可以把它理解为”电话交换机“,它总是在等待某个用户用”电话“主动发起会话,然后连通到对方的“电话”中。
第二个问题,没试过在线程中更新GUI,不知是否可行。主要是有一个问题:另外如果逻辑操作太过耗时或发生阻塞,等了好长时间都没执行到UI更新的地方,就会产生ANR。根据MVC的理念和编程规范(android禁止在线程更新UI),一般都是把GUI的更新放在主进程,线程只执行逻辑操作,得出结果后通过某种机制通知主进程更新UI(例如消息队列机制)。
至于多线程,无非就是Thread类和Runnable类的使用,想再深一点可以研究下线程池,这些百度一下就有了,不重复说了。
第二个问题,没试过在线程中更新GUI,不知是否可行。主要是有一个问题:另外如果逻辑操作太过耗时或发生阻塞,等了好长时间都没执行到UI更新的地方,就会产生ANR。根据MVC的理念和编程规范(android禁止在线程更新UI),一般都是把GUI的更新放在主进程,线程只执行逻辑操作,得出结果后通过某种机制通知主进程更新UI(例如消息队列机制)。
至于多线程,无非就是Thread类和Runnable类的使用,想再深一点可以研究下线程池,这些百度一下就有了,不重复说了。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询