各位好小弟最近遇到这样的问题,在client端,我要获取一个列表list。取列表的方法为List<Item> getListItems,在方法内主要完成两件事:1.向server端发送socket数据,2.接收其传回的数据。问题在于,现在在client端,我想做完1以后,另起一个线程来等待其回传的数据,应该怎么办呢,要使用异步socket吗?先谢谢了

解决方案 »

  1.   

    不需要。
    你这个问题,更异步socket没有任何关系,而是你的逻辑需要异步,
      

  2.   

    恩,弄两个线程,一个发线程,SendThread
    一个收线程 ReceiveThread,
    把逻辑独立分开。
      

  3.   

    如ls两位所说,那我这样可行否
    public List<Item> getListItems(){new SendThread().start();  <---发DataInputStream in = new DataInputStream(mSocket.getInputStream());   <---收String items = in.readUTF();// handle itemsreturn items;
    }
      

  4.   

    main函数也是一个线程吧,相当于就是多线程了。