Command Usage: sam v8_1_5
sam close servants

Just having some fun...
Command Description:

This command is worthless to CLI users.

For API users, this interface is provided so that
long-running python scripts that know they will not be
making any SAM calls in the future (or, at least, for
some time into the future) may close their servant
connections, freeing up resources for other users.

Details: obtaining a new servant connection is a rather
expensive operation.  Hence, the SAM client code is
designed to cache and re-use any servant connections that
are established.  The servants will be closed upon image
termination; however, if you know that you are done with
your sam connections before that time, you can close
them manually as a courtesy to others.  (The connections
will be re-established if needed at a later point
in the code).

Pseudo-code example:

    #!/usr/bin/env sampy
    from Sam import sam

    # do some sam stuff
    myListToWorkOn = sam.doSomething(...)

    # I will not be calling sam for a while;
    #  close my connections as a courtesy.
    sam.closeServants()

    # now do some long-running thing with my data:
    myResults = []
    for element in myListToWorkOn:
        myResults.append(doOtherStuff(element))

    # and now if I need to use sam again, my
    #  connections will be re-established as needed
    sam.doSomethingElse(myResults)
    

Usage:
       sam close servants [--options] [-flags]

Where:


  --options:
	    --corbaCallTimeout=<value> # time in seconds for CORBA method calls to return before timing out (default: 0; zero implies no timeout)
	       --retryInterval=<value> # retry interval base in seconds; will multiply this base times retryCount (default: 5)
	         --retryJitter=<value> # retry jitter, random jitter added to base retry interval times retryCount (default: 5)
	       --retryMaxCount=<value> # number of times to retry CORBA calls for retriable exceptions (default: 25; zero implies no retries)

   -flags:
	                            -c # automatically close all servants after each method call
	                            -d # debug mode
	                            -s # retrySilently mode (do not issue messages to stderr on proxy retries)
	                            -t # time-it mode (print additional info on timings)
	                            -v # verbose mode

Required Data Types:
	              corbaCallTimeout : int 
	                 retryInterval : int 
	                   retryJitter : int 
	                 retryMaxCount : int 

You may omit "-c" if the $SAM_PYAPI_AUTO_CLOSE_SERVANTS environmental variable is set.
You may omit "--corbaCallTimeout=<value>" if the $SAM_PYAPI_CORBA_CALL_TIMEOUT environmental variable is set.
You may omit "--retryInterval=<value>" if the $SAM_PYAPI_RETRY_INTERVAL environmental variable is set.
You may omit "--retryJitter=<value>" if the $SAM_PYAPI_RETRY_JITTER environmental variable is set.
You may omit "--retryMaxCount=<value>" if the $SAM_PYAPI_RETRY_MAX_COUNT environmental variable is set.
You may omit "-s" if the $SAM_PYAPI_RETRY_SILENTLY environmental variable is set.

UNIX ExitStatus:
	             Success :   0
	Unhandled exceptions : 127


See Also: