MyThread t = new MyThread(...);r.run();
byte[] b = r.getreturndata();//print b's content.
请问,在run结束之后,线程就己经运行完成.调用后面的语句是否可以正确的得到线程运行后返回的数据.

解决方案 »

  1.   

    再问一个问题:DataOutputStream dos = DataOutputStream(client.getOutputStream());
    byte [] buf = .....;
    dos.write(buf);请问write能不把数据发送完成.需不需要调用flush函数..
    说明.我本人不是学JAVA.只是在看别人的程序.请各位兄弟帮忙解决.
      

  2.   

    你的r是什么东西啊? 启动线程要用start()的。
    还有getreturndata();方法内部具体是怎么实现的?输出流对象write之后好象都要flush一下的吧。
      

  3.   

    run方法不能调用,要调用start方法,线程执行后,实例仍然是存在的,你还可以取里面的值的。
      

  4.   

    调用run方法就和普通方法一样,不会启动线程如果是autoflush就可以不调用
      

  5.   

    对不起.我写错了.
    r.run();---->t.start