TINMAN 3D / REALTIME TERRAIN
Software Development Kit - User Manual

interface IServer in Tinman.Core.IO.Sockets

Base interface for classes that act as network servers.

interface IServer extends IDisposable

Attributes

EndPoint

Returns the network endpoint address of this server.

property EndPoint { get }
type IEndPoint
value [not-null] The network endpoint address.

LifecycleState

Returns the lifecycle state of this object.

property LifecycleState { get }
type LifecycleState
value The lifecycle state.
inherited ILifecycleState.LifecycleState

Methods

Accept

Accepts a new client connection to this server.

[OwnerReturn]
method Accept ()
type IConnection
returns The accepted IConnection or null if the server socket has been closed (via Dispose).

Exceptions:

AcquireTry

Acquires a strong reference to this disposable object.

[OwnerReturn, ThreadSafe]
method AcquireTry ()
type IDisposable
returns this if a new strong reference has been acquired, null if this object is already being disposed.
inherited IDisposable.AcquireTry

Remarks:

The object will not be actually disposed by calls to Dispose when there is at least one strong reference left. Code that calls the AcquireTry method is responsible for calling the Dispose method accordingly.

This method is not intended to be used in performance-critical code. It should only be used to high-level resource management.

Dispose

Releases all resources held by this object if there are no more strong references to it, decrements the reference counter by one otherwise.

[Dispose, OwnerThis, ThreadSafe]
method Dispose ()
inherited IDisposable.Dispose

Remarks:

The Dispose method silently returns if the object has already been disposed.