我的应用程序中有一个主线程会话,该会话中包含我想访问的有价值数据。通常我只是使用TDSSessionManager.GetThreadSession
方法获取会话,但是现在我必须在在主线程之外时访问此会话。
我想到可能通过某种方式引用我的会话中的一些数据,但我不知道如何。 除了您所在的主题之外,还有什么方法可以从其他地方获取会话吗?
答案 0 :(得分:2)
假设您使用的是最近的Delphi版本,则可以使用 Rtti 来引用它。 TDSSessionManager 实现单例,这将有助于您的工作。
答案 1 :(得分:0)
您可以使用TDSSessionManager循环访问您的会话。实例
TDSSessionManager.Instance.ForEachSession
(
procedure(const Session: TDSSession)
begin
if Session.HasData('User') then begin
Listbox1.AddItem(Session.GetData('User'),Session);
end;
end
);