[fix]修正UdpServer在接收广播时连续启动接收的错误,在StarAgent中,此时可能收到广播包,SocketFlags是Broadcast,需要清空,否则报错“参考的对象类型不支持尝试的操作”; 无需设置SocketOptionName.PacketInformation,在ReceiveMessageFromAsync时会自动设置,并且支持ipv6;
石头 编写于 2024-10-10 00:36:00 石头 提交于 2024-10-10 00:45:43
X
using NewLife.Model;

namespace NewLife.Net;

/// <summary>Socket服务器接口</summary>
public interface ISocketServer : ISocket, IServer
{
    /// <summary>是否活动</summary>
    Boolean Active { get; }

    /// <summary>会话超时时间。默认20*60秒</summary>
    /// <remarks>
    /// 对于每一个会话连接,如果超过该时间仍然没有收到任何数据,则断开会话连接。
    /// </remarks>
    Int32 SessionTimeout { get; set; }

    /// <summary>会话集合。用地址端口作为标识,业务应用自己维持地址端口与业务主键的对应关系。</summary>
    IDictionary<String, ISocketSession> Sessions { get; }

    /// <summary>新会话时触发</summary>
    event EventHandler<SessionEventArgs> NewSession;
}