getsockopt函数

首页 / Perl / getsockopt函数

描述

此函数获取optionsOPTNAME在Socket实现级别LEVEL上在SOCKET上设置的Socketoptions。下表提供了一些OPTNAME在Socket级别的示例值-

OPTNAME 	Result
SO_DEBUG 	Get status of recording of debugging information
SO_REUSEADDR 	Get status of local address reuse
SO_KEEPALIVE 	Get status of keep connections alive
SO_DONTROUTE 	Get status of routing bypass for outgoing messages
SO_LINGER 	Get status of linger on close if data is present
SO_BROADCAST 	Get status of permission to transmit broadcast messages
SO_OOBINLINE 	Get status of out-of-band data in band
SO_SNDBUF 	Get buffer size for output
SO_RCVBUF 	Get buffer size for input
SO_TYPE 	Get the type of the socket
SO_ERROR 	Get and clear error on the socket
TCP_NODELAY     To disable the Nagle buffering algorithm.

打包字符串中的确切内容取决于LEVEL和OPTNAME,有关详细信息,请查阅系统文档。

语法

以下是此函数的简单语法-

getsockopt SOCKET, LEVEL, OPTNAME

返回值

此函数在错误时返回undef,否则返回标量context中的options值。

无涯教程网

链接:https://www.learnfk.comhttps://www.learnfk.com/perl/perl-getsockopt.html

来源:LearnFk无涯教程网

以下是显示其基本用法的示例代码,这将检查Nagle的算法是否在Socket上打开。但是,在此示例中,您将必须打开一个Socket以提供存储的ID-

#!/usr/bin/perl

use Socket qw(:all);

defined(my $tcp=getprotobyname("tcp"))
   or die "Could not determine the protocol number for tcp";
# my $tcp=IPPROTO_TCP; # Alternative

my $packed=getsockopt($socket, $tcp, TCP_NODELAY)
   or die "Could not query TCP_NODELAY socket option: $!";
my $nodelay=unpack("I", $packed);

print "Nagle's algorithm is turned ", $nodelay ? "off\n" : "on\n";

这一章《Perl - getsockopt函数》你学到了什么?在下面做个笔记吧!做站不易,你的分享是对我们最大的支持

好记忆不如烂笔头。留下你的足迹吧 :)

相关文章

左耳听风 -〔陈皓 - 〕

流程型组织15讲 -〔蒋伟良 - 〕

讲好故事 -〔涵柏 - 〕

玩转Vue 3全家桶 -〔大圣 - 〕

如何判断两个二叉树是否包含相同的节点?

... 可以用不同的约束子类型'string | 来实例化.号码 |象征'

将 timedelta 添加到本地日期时间,整个 DST 班次的意外行为

如何从两个不同文件中的两个不同类中获取函数以相互通信?

java.lang.reflect.InaccessibleObjectException:无法使字段私有...

使用其他列的连接仅返回最近的审计行以找到正确的分组

视频推荐〔Perl 哈希函数〕

更多 Perl-getsockopt 视频教程 »