ActionScript3.0 Socket通信问题,socket.flush()后,Socket就关闭了??
代码如下:
//目的:每隔一分钟向服务端发送一个字符串。
//问题:发送第一个字符串后,Socket的状态即变为非连接状态了!为什么?
// 服务端只能收到第一条字符串,之后的收不到!
public class Client extends Sprite{
public var socket:Socket;
public var timer:Timer;
public function Client(){
socket = new Socket();
socket.addEventListener(Event.CONNECT,conn);
socket.addEventListener(Event.CLOSE,close);
socket.connect("127.0.0.1",1999);
timer = new Timer(1000,0);
timer.addEventListener(TimerEvent.Timer,handler);
}
public function conn(event:Event):void{
trace("==========连接建立==========");
timer.start();
}
public function close(event:Event):void{
trace("==========连接关闭==========");
}
public function handler(event:TimerEvent):void{
sendMsg();
}
public function sendMsg():void{
trace((socket!=null) + " | " + socket.connected );
if(null!=socket && socket.connected ){
socket.writeUTF("一个字符串");
socket.flush();
}
}
}
代码运行答应:
=============连接建立===========
true | true
=============连接关闭===========
true | false
true | false
true | false
...............