线程中调用公用单元的公用函数出现奇怪错误! ( 积分: 50 )

  • 主题发起人 主题发起人 units
  • 开始时间 开始时间
U

units

Unregistered / Unconfirmed
GUEST, unregistred user!
在线程的execute里面写如下语句:
synchronize(ReceiveAll);
//ReceiveAll是公用单元内的函数
结果编译出现如下错误提示信息:
[Error] U_ThreadShowWindow.pas(49): There is no overloaded version of 'Synchronize' that can be called with these arguments
请诸位指教
 
在线程的execute里面写如下语句:
synchronize(ReceiveAll);
//ReceiveAll是公用单元内的函数
结果编译出现如下错误提示信息:
[Error] U_ThreadShowWindow.pas(49): There is no overloaded version of 'Synchronize' that can be called with these arguments
请诸位指教
 
Synchronize能够调用的函数只能是对象方法,也就是在类中定义的过程。
 
Synchronize能够调用的只能是TThreadMethod的方法,即procedure of object的方法。
 
多人接受答案了。
 
procedure Synchronize(Method: TThreadMethod);
ReceiveAll是公用单元内的函数,不是TThreadMethod
 
后退
顶部