Perl网络编程:套接字、客户端模块与RPC实现
1. IO对象和文件句柄
在Perl中,支持BSD套接字调用,它会返回一个文件句柄,就像 open 函数对文件和管道操作时返回文件句柄一样。这个文件句柄可以作为所有内置输入输出操作符的参数,例如 <> 、 read 、 sysread 、 print 、 write 、 syswrite 等。此外,它还能用于特定的套接字函数,如 send 、 recv 和 setsockopt 。
IO::Socket 模块的 new 方法会返回一个对象,该对象也可作为这些I/O例程的参数。在内部,它会调用 socket 函数,并使用与文件句柄对应的类型全局变量来存储其他属性。实际上,它的返回值与传递给 socket 的对象相同,所以对于I/O操作符来说,选择哪种方式并不重要。不过,建议选择更易于使用的 IO::Socket 选项。
对于 IO::Select ,情况有所不同。如果性能至关重要,你可能会选择自己实现 IO::Select 的功能,示例代码如下:
超级会员免费看
订阅专栏 解锁全文
53

被折叠的 条评论
为什么被折叠?



