我有一个接收数据报的线程,如何让多个类处理该线程接收的数据报?
class TReceive extends Thread
{public void run()
{byte[] buf = new byte[1024];
DatagramPacket packet = new DatagramPacket(buf, 1024);
try
{DatagramSocket socket=new DatagramSocket();
while(true) {socket.receive(packet); }
}
catch (IOException e) {System.out.println(e.toString());}
}
}我现在是这样子的:
class TReceive extends Thread
{Ctest1 c;
public TReceive(CTest1 r) {c=r; }
public void run()
{byte[] buf = new byte[1024];
DatagramPacket packet = new DatagramPacket(buf, 1024);
try
{DatagramSocket socket=new DatagramSocket();
while(true) {socket.receive(packet); c.process(packet); }
}
catch (IOException e) {System.out.println(e.toString());}
}
}Class Ctest1
{public CTest1() {TReceive r=new TReceive(this); r.start();}
...
void process( DatagramPacket packet)
{...
}
}结构不太好,请高手指点,应该如何改
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货