我有部署多个 Windows 服务的服务应用程序
static void Main()
        {
            DebugManager manager = new DebugManager();
            ServiceBase[] ServicesToRun;
            ServicesToRun = new ServiceBase[] 
            { 
                new Service1(),
                new Service2(),
                new Service3(),
                            };
            ServiceBase.Run(ServicesToRun);
        }
这是调试管理器
public class DebugManager : BaseDebug
    {
        private AsyncServer s;
        public DebugManager()
        {
            s = new AsyncServer(10000);
            s.Start();
        }
        public override void SendMessage(string message)
        {
            ts.SendMessage(message);
        }
       }
以及 Socket Server 本身
class AsyncServer
    {
        private Socket _serverSocket;
        private List<Socket> _clients;
        private int _port;
        byte[] buffer = new byte[255];
        public AsyncServer(int port) { _port = port; }
        public void Start()
        {
            try
            {
                _clients = new List<Socket>();
                SetupServerSocket();
                _serverSocket.BeginAccept(new AsyncCallback(AcceptCallback), _serverSocket);
            }
            catch(Exception ex)
            {
                EventLogManager.LogInformation(ex.ToString());
            }
        }
        private void SetupServerSocket()
        {
            try
            {
                IPHostEntry localMachineInfo = Dns.GetHostEntry(Dns.GetHostName());
                IPEndPoint myEndpoint = new IPEndPoint(localMachineInfo.AddressList[1], _port);
                _serverSocket = new Socket(myEndpoint.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp);
                _serverSocket.Bind(myEndpoint);
                _serverSocket.Listen((int)SocketOptionName.MaxConnections);
            }
            catch (Exception ex)
            {
                EventLogManager.LogInformation(ex.ToString());
            }
        }
        private void AcceptCallback(IAsyncResult result)
        {
            try
            {
                Socket s = (Socket)result.AsyncState;
                Socket socket = s.EndAccept(result);
                _clients.Add(socket);
                _serverSocket.BeginAccept(new AsyncCallback(AcceptCallback), result.AsyncState);
            }
            catch (SocketException ex)
            {
                EventLogManager.LogInformation(ex.ToString());
            }
            catch (Exception ex)
            {
                EventLogManager.LogInformation(ex.ToString());
            }
        }
       public void SendMessage(string message)
        {
            try
            {
                byte[] bits = Encoding.UTF8.GetBytes(message);
                SocketAsyncEventArgs args = new SocketAsyncEventArgs();
                args.SetBuffer(bits, 0, bits.Length);
                foreach (var client in _clients)
                {
                    if (!client.Connected)
                    {
                        _clients.Remove(client);
                        continue;
                    }
                    try
                    {
                        client.SendAsync(args);
                    }
                    catch (Exception ex)
                    {
                        EventLogManager.LogInformation(ex.ToString());
                    }
                }
            }
            catch (Exception ex)
            {
                EventLogManager.LogInformation(ex.ToString());
            }
        }
    }
当我部署我的服务时,我的套接字服务器似乎没有启动或启动然后立即关闭。我的设计有什么问题,或者可能是我的代码?