免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 3184 | 回复: 2
打印 上一主题 下一主题

IO::Soceket服务器端发送的信息客户端接收不到,如何解 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2016-07-23 19:16 |只看该作者 |倒序浏览
本帖最后由 zmj9152 于 2016-07-23 19:19 编辑

  1. # 客户端程序
  2. use IO::Socket;
  3. $socket = IO::Socket::INET->new(
  4.         #PeerAddr => '192.168.125.10',
  5.         PeerAddr => '127.0.0.1',
  6.         PeerPort => 1500,  
  7.         Proto => 'tcp',  
  8.         Type => SOCK_STREAM
  9. )or die "Could not open port.\n";

  10. unless (defined($pid = fork())){die "Can not find fork\n"};

  11. if ($pid){  
  12.         while($line = <>){
  13.                
  14.                 print $socket $line;
  15.         }
  16. }


  17. # else{
  18.         # while($line = <$socket>){
  19.                 print "$line\n";
  20.         # }#此段程序一运行,客户端也不能向服务器发信息了,如何解决呢?这个例子是从书上照搬的
  21.        
  22. # }


  23. close($socket);


  24. ############
  25. #服务器端程序
  26. use IO::Socket;
  27. $server = IO::Socket::INET->new
  28. (
  29.         LocalPort => 1500,  
  30.         Type =>SOCK_STREAM,
  31.         Reuse => 1,
  32.         Listen => 5
  33. )or die 'Could not open port\n';
  34. while ( $client = $server->accept()) {
  35.     unless (defined($pid = fork())){die "Cannot find fork"};       
  36.         if($pid){
  37.                 while($line = <$client>){
  38.                         print "$line";
  39.                 }
  40.         }
  41.         else{
  42.                 while($line = <>){
  43.                                 print $client $line;
  44.                 }
  45.         }
  46. }
  47. close($server);
复制代码

论坛徽章:
42
19周年集字徽章-周
日期:2019-10-14 14:35:31平安夜徽章
日期:2015-12-26 00:06:30数据库技术版块每日发帖之星
日期:2015-12-01 06:20:002015亚冠之首尔
日期:2015-11-04 22:25:43IT运维版块每日发帖之星
日期:2015-08-17 06:20:00寅虎
日期:2014-06-04 16:25:27狮子座
日期:2014-05-12 11:00:00辰龙
日期:2013-12-20 17:07:19射手座
日期:2013-10-24 21:01:23CU十二周年纪念徽章
日期:2013-10-24 15:41:34IT运维版块每日发帖之星
日期:2016-01-27 06:20:0015-16赛季CBA联赛之新疆
日期:2016-06-07 14:10:01
2 [报告]
发表于 2016-07-25 10:46 |只看该作者
怀疑你抄错了。

论坛徽章:
0
3 [报告]
发表于 2016-08-05 19:56 |只看该作者
个人的理解是,客户端程序只是创建了客户端的套接字对象,而并没有调用它与服务端发起连接,所以只有套接字是无法与服务端交互的,个人见解可能有误,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP