当客户端收到文本消息时,将触发 OnMessage 事件。读取 Text 参数以获取收到的消息字符串。
procedure OnMessage(Connection: TsgcWSConnection; const Text: string);
begin
ShowMessage('Message Received from Server: ' + Text);
end;
默认情况下,客户端使用 neAsynchronous 方法分发 OnMessage 事件,这意味着此事件在主线程的上下文中执行,因此更新表单中的任何控件都是线程安全的。
如果您的客户端接收大量消息,或者需要控制与其他线程的同步,请将 NotifyEvents 属性设置为 neNoSync,这意味着 OnMessage 事件将在连接线程的上下文中执行,因此如果您需要更新窗体上的任何控件或访问共享对象,则必须实现自己的同步方法。