3.4 KiB
3.4 KiB
source_files, generated_at, model, schema_version, sha256
| source_files | generated_at | model | schema_version | sha256 | |
|---|---|---|---|---|---|
|
2026-04-17T16:08:23.342605+00:00 | zai-org/GLM-5-FP8 | 1 | c423b632187ca2f1 |
Connection
Purpose
This module defines the IConnection interface, which provides an abstraction layer for network socket connections. It supports both synchronous and asynchronous communication patterns, connection lifecycle management (including a "soft disconnect" state for temporary disconnections with reconnection intent), and server-side operations like binding and listening. The interface extends IDisposable to ensure proper resource cleanup.
Public Interface
Interface: IConnection (extends IDisposable)
| Member | Signature | Description |
|---|---|---|
SendAsync |
Task<int> SendAsync(byte[] sendBuffer, int bufferStartOffset, int bufferSizeToSend) |
Asynchronously sends data from the buffer. Returns the number of bytes sent. |
IsSoftDisconnected |
bool IsSoftDisconnected { get; } |
Returns true if the unit is soft disconnected (voluntarily disconnected with expectation of reconnecting). |
SoftDisconnect |
void SoftDisconnect() |
Performs a soft disconnect (voluntary disconnect with intention to reconnect later). |
SoftConnect |
void SoftConnect() |
Reconnects a soft disconnected unit. |
Flags |
System.Net.Sockets.SocketFlags Flags { get; set; } |
Gets or sets socket flags for send/receive operations. |
OnDisconnected |
event EventHandler OnDisconnected |
Event raised when the connection is disconnected. |
KeepAliveErrorReceived |
void KeepAliveErrorReceived() |
Called to indicate the device has not received a timely response to keep-alive. |
ConnectString |
string ConnectString { get; } |
Gets the connection string for this connection. |
Connected |
bool Connected { get; } |
Gets whether the connection is currently active. |
Create |
void Create(string connectString) |
Initializes the connection with a connection string. |
Create |
void Create(string connectString, string hostIPAddress) |
Initializes the connection with a connection string and specific host IP address. |
GetConnectionData |
string GetConnectionData() |
Retrieves connection data as a string. |
BeginConnect |
IAsyncResult BeginConnect(AsyncCallback callback, object callbackObject) |
Begins an asynchronous connection attempt. |
EndConnect |
void EndConnect(IAsyncResult ar) |
Completes an asynchronous connection attempt. |
BeginDisconnect |
IAsyncResult BeginDisconnect(bool reuseSocket, AsyncCallback callback, object state) |
Begins an asynchronous disconnection. |
EndDisconnect |
void EndDisconnect(IAsyncResult asyncResult) |
Completes an asynchronous disconnection. |
BeginAccept |
IAsyncResult BeginAccept(AsyncCallback callback, object state) |
Begins an asynchronous operation to accept an incoming connection. |
EndAccept |
IConnection EndAccept(IAsyncResult asyncResult) |
Completes an accept operation and returns the accepted IConnection. |
Bind |
void Bind(int port) |
Binds the connection to a specific local port. |
Listen |
void Listen(int backlog) |
Places the connection in a listening state with specified backlog. |
BeginSend |
IAsyncResult BeginSend(byte[] sendBuffer, int bufferStartOffset, int bufferSizeToSend, AsyncCallback callback, object callbackObject) |
Begins an asynchronous send operation. |
| `End |