idHttpServer
OnCommandGet
是否在线程内运行?我猜Indy创建了一个线程并在其中调用此事件,但我对此并不十分肯定。
Indy这样做,可以在此事件中设置threadvar
并从我OnCommandGet
调用的方法中读取此变量吗?
答案 0 :(得分:3)
是的,它运行在Indy创建和管理的线程中。您可以通过调用GetCurrentThreadID
并将结果与全局MainThreadID
变量进行比较来验证这一点。
虽然可以使用threadvars,但请考虑将这些值作为简单的参数传递给您调用的函数。那么你没有全局变量的所有缺点。