当我调用idtcpserver1.active := true 服务器启动成功以后,发现系统运行慢,看了一下,cpu占用了100%,这怎么解决

解决方案 »

  1.   

    我启动服务器的函数和例子中差不多啊!! 
      //判断如果服务器没有停止的情况
      if not StopServer then
        begin
        fErrors.Append('服务器停止错误');
        Result := false;
        exit;
        end;
      // 清空加入Bindings的IP服务;
      IdServer.Bindings.Clear;
      try
      try
      //添加一个服务
      Binding:=IdServer.Bindings.Add;
      //设置该服务的IP地址
      Binding.IP := ComBIp.Text;
      //设置该服务的端口
      Binding.Port := StrToInt(EditPort.Text);
      SL.append('服务器启动IP ' + Binding.IP + ' 端口号 ' + EditPort.Text);
      //启动服务器
      IdServer.Active := true;
      //设置返回值
      result := IdServer.Active;
      //设置该变量判断服务器是否启动
      fServerRunning := result;
      lbProcesses.Items.AddStrings(SL);
      lbProcesses.Items.Append('服务器启动');
      if result then
        StatusBar.SimpleText := '服务已经启动'
      else
        StatusBar.SimpleText := '服务没有启动';  except
      on E : Exception do
        begin
        lbProcesses.Items.Append('服务器没有启动');
        fErrors.append(E.Message);
        Result := false;
        fServerRunning := result;
        end;
      end;
      finally
      FreeAndNil(SL);
      end;
      

  2.   

    高手都去哪里了啊,我的控件启动以后就会占用cpu利用率100%
    即使只用了最简单的
    Binding:=IdServer.Bindings.Add;
    Binding.IP := ComBIp.Text;
    Binding.Port := StrToInt(EditPort.Text);
    IdServer.Active := true;
      
      

  3.   

    不会吧
    我没事哦用最新的Indy9.0.17吗?