constructor TDeliverThread.Create(CreateSuspended: Boolean; AReceiveShortMessage :TReceiveShortMessage;AADOConnStr:String);x
begin
  ReceiveShortMessage := AReceiveShortMessage;
  self.ADOConnStr := AADOConnStr;
  inherited Create( CreateSuspended );
end;
上面这段代码是什么意思?
最最主要的是
inherited Create( CreateSuspended );
这一行,看了Create后,还是不能理解
请各位教我下!

解决方案 »

  1.   

    调用基类的Create函数。CreateSuspended 是参数
      

  2.   

    我知道是调用基类的CREATE,却不看不懂,CreateSuspended是Boolean型的,它又决定了什么?
      

  3.   

    好像有点类似于初始化线程的是作用,是构造函数的实体,执行部分。
    如:
    unit1 
    ....
    .....
    public
    constructor create (delayms:cardinal; bar :tprogressbar);.....constructor Twaitthread.create(delayms:cardinal; bar :tprogressbar);
    begin
    inherited create(true);
    freeonterminate:=true;//设置线程运行
    fdelayms:=delayms;
    Fbar:=bar;
    end;
      

  4.   

    inherited Create( CreateSuspended ); 应该是继承线程类的构造函数
    CreateSuspended指线程创建时是否挂起:
    CreateSuspended = true 表示线程挂起,不立即执行,这时可以设置一下线程属性,然后需调用.Resume唤醒线程,执行;
    CreateSuspended = false 表示线程立即执行,之后也可调用.Suspend暂停线程参考delphi help >> TThread
      

  5.   

    建议楼主参考下delphi的帮助和源代码。
    显然这个线程的构造函数是用于传进来ReceiveShortMessage 和ADOConnStr两个参数
    以便在此线程内部使用.而第一个参数是为了同父类的创建挂起功能.
      

  6.   

    TDeliverThread 应该是继承了 TThread 线程类。constructor TDeliverThread.Create(CreateSuspended: Boolean; AReceiveShortMessage :TReceiveShortMessage;AADOConnStr:String);x
    begin
      ReceiveShortMessage := AReceiveShortMessage;   //委托线程处理的消息、事件对象
      self.ADOConnStr := AADOConnStr;                //AdoConnection连接串属性赋值
      //调用基类的Create函数,线程创建之后,由CreateSuspended参数决定是否挂起  
      inherited Create( CreateSuspended );           
    end; 
      

  7.   

    CreateSuspended看样子象线程的挂起标志
      

  8.   

    还是没有人能告诉我
    inherited Create( CreateSuspended );
    这一行,CreateSuspended为true会产生什么情况,为FALSE又会产生什么情况.
      

  9.   

    Call Create to create a thread in an application. If CreateSuspended is False, Execute is called immediately. If CreateSuspended is True, Execute won't be called until after Resume is calle
      

  10.   

    建议看一些基础方面书籍,或者看Delphi的在线帮助手册。
      

  11.   

    inherited Create( CreateSuspended ); 这一行是调用了父类的构造方法,也就是TThread类的Create方法
    它只有一个Boolean类型的参数,当为true时创建线程后,线程不会立即执行(即挂起),需要调用Resume方法才会执行
    线程函数的代码,而在TThread类里线程函数是调用了TThread.Execute;这个纯虚函数.所以你创建的线程要重载这个函数,
    这样线程就执行了你的Execute里面的代码.
    而当Create的参数为false后,线程就立即开始执行了。不需要再调用Resume方法。
    TThread就是利用Execute这个纯虚函数,加上synchronize的同步(把synchronize方法内的过程放到主线程里执行,具体机制参见源代码classes单元及Forms单元的TApplication类)来实现对线程的封装
      

  12.   

    inherited ;后面不加,其他代码 又是什么意思呢?继承什么函数?
      

  13.   

    true的情况下,线程被创建后,并不会立刻run你在线程函数Excute中指定的代码,而是处于Suspended状态.即挂起,不工作,不会分配cpu时间片给它,这种状况持续到你调用Resume方法,让它run起来为止.
    与之相反,false的情况下,线程一旦被创建,就立刻开始run.不知道说清楚没有.