Timeout Property (PISDK Object)



A read/write numeric property representing the number of whole seconds a call will block waiting for a reply before failing. The property applies to all synchronous calls to a server except the Open call which is controlled by the ConnectTimeout property. This property may be overridden by setting a specific server's Server.Timeout property. If the Timeout property has not been set previously, a value of 60 seconds is used.



The object placeholder is an object expression that evaluates to a PISDK object.



The Timeout property is stored in the Known Servers Table. To remove the server's setting and return to the default value, set the Server.Timeout property to 0. To force servers already using the default to a newly updated default value, you will need to call PISDK.Refresh on either one Server object or on the whole Servers collection.

There are limits of effectiveness to the Timeout property.  The value is used by the PI-SDK when requesting services from the Server.  Not all server calls can honor this timeout and relatively short timeouts (1-10 seconds) may be overshadowed by internal timeouts required by the communications.  It is common to set timeouts longer for remote systems accessed over low bandwidth connections and for applications that will make "expensive" calls to the server which may take more than 60 seconds to execute.  Examples of expensive calls are querying a large server for all PIPoints with attributes set in a certain way or requesting evaluation of a complicated filter expression over a long time period.

The timeout setting used when communicating with PI2 servers is obtained from the PIPC\dat\pilogin.ini file if the section [Network], item Timeout is set.  A default value of 60 seconds is used if this is not set in the pilogin.ini file.  Changes to the pilogin.ini file will only take effect when a program is restarted.


Enabling Operational Intelligence