- 論壇徽章:
- 0
|
與perl的socket沒發(fā)現(xiàn)問題,相同代碼- tcp_connect $if_ip,$if_port,
- sub {
- my ($sock)=@_;
- unless ($sock) {
- $interface->{$if_info}=undef;
- delete $interface->{$if_info};
- $log->w_log(5,"[conn_interface] Could not connect to interfaceService $if_ip:$if_port");
- return;
- }
- my $handle;
- eval {
- $handle = AnyEvent::Handle->new (
- fh => $sock,
- on_read => sub {
- my $buf = delete $_[0]->{rbuf};
- if (defined($buf)) {
- push(@{$interface->{$if_info}->{recv_buf}},$buf);
- &check_recv_buf("interface",$if_info);
- }
- },
- on_eof => sub {
- $handle->destroy;
- undef $interface->{$if_info};
- delete $interface->{$if_info};
- $log->w_log(5,"[conn_interface] connection eof:$!");
- },
- on_error => sub {
- $handle->destroy;
- undef $interface->{$if_info};
- delete $interface->{$if_info};
- $log->w_log(5,"[conn_interface] connection error");
- },
- );
- };
- unless($handle) {
- $interface->{$if_info}=undef;
- delete $interface->{$if_info};
- $log->w_log(5,"[conn_interface] Create AnyEvent::Handle error!");
- return;
- }
- $interface->{$if_info}->{status}=1;
- $interface->{$if_info}->{sock} = $sock;
- }, sub {
- 5
- };
復(fù)制代碼 |
|