Num (Socket function)
Socket numbers of a set of selected sockets (Socket class)
This shared method retrieves the socket numbers
of the set of sockets you select.
For Socket objects,
it implicitly executes a GetSocketNumber.
The Num function has an effect similar to $Sock_Num.
Syntax
%string = %(Socket):Num[( [string])]
Syntax terms
%string | Return string, which is to contain blank-separated socket numbers. | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
%(Socket) | The class name in parentheses denotes a shared method. Specifying %(Socket): is not the only way to invoke the method (see ?? refid=themeth.).
| ||||||||||||||||||
string | The socket numbers to return: any combination of the following strings separated by OR , and each optionally prefixed by NOT :
If |
Usage notes
- The Num method returns a blank-delimited string containing the numbers of the requested sockets in ascending order.
- The Num method is not affected by any ONRESET setting.
Examples
- In the following example,
%nums
contains the blank-delimited numbers of (all) the open sockets:JANUS DEFINE PIPE * CLSOCK 5 REMOTE * * SOCKPMAX 2 JANUS START PIPE Begin %nums Is String Len 255 %sockamp object Socket %sockwga object Socket %sockamp = New('PIPE', 'www.ampas.org', 80) If %sockamp Is Null Then Print 'Error:' And $STATUSD Stop End If %sockwga = New('PIPE', 'www.wga.org', 80) If %sockwga Is Null Then Print 'Error:' And $STATUSD Stop End If %nums = %(Socket):Num Print 'The socket numbers are: ' %nums %sockamp:Close %sockwga:Close End
The example result is:
The socket numbers are: 2 3
- The following example shows another way to retrieve the list of all OPEN socket numbers:
%nums = %(Socket):Num('NOT RESET')
- The following example shows how to retrieve the list of all OPEN
socket numbers that have not received the FIN indicator:
%nums = %(Socket):Num('CONN OR FINS')
Socket numbers of a set of selected sockets (Socket class)