美文网首页
TThread::SetReturnValue - C++ Bu

TThread::SetReturnValue - C++ Bu

作者: 玄坴 | 来源:发表于2020-06-19 08:20 被阅读0次

C++ Builder 参考手册 ➙ System::Classes ➙ TThreadSetReturnValue


头文件:#include <System.Classes.hpp>
命名空间:System::Classes
类:TThread
访问权限:public:
函数原型:

static void __fastcall SetReturnValue(int Value);

SetReturnValue 是 System::Classes::TThread 的静态成员函数,在线程外部设置当前线程的 ReturnValue 属性的值。

参数:

Value:要把前线程的 ReturnValue 属性的值设为 Value。

返回值:

无。

  • 用这个方法在线程外部设置当前线程的 ReturnValue 属性的值,如果在线程内部,需要直接写 ReturnValue 属性;
  • 只有内部创建的线程可以调用这个方法,即在 Execute 方法里面调用的函数里面可以调用,外部创建的线程调用这个方法会抛出异常,用 CreateAnonymousThread 方法创建的匿名线程里面调用会抛出异常。

例子:在线程里面调用了一个全局函数,全局函数里面调用了 SetReturnValue 方法设置了 ReturnValue 属性的值。

void MyFunc(void)
{
    for(int i=0; i<100; i++)
        Sleep(10);
    TThread::SetReturnValue(112233);
}

class THsuanluThread : public TThread
{
protected:
    void __fastcall Execute(void)
    {
        MyFunc();
    }
};

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    THsuanluThread *lpThread = new THsuanluThread;
    ShowMessage(lpThread->WaitFor());
    delete lpThread;
}

运行结果:

测试 TThread::SetReturnValue 运行结果

参考:


C++ Builder 参考手册 ➙ System::Classes ➙ TThreadSetReturnValue

相关文章

网友评论

      本文标题:TThread::SetReturnValue - C++ Bu

      本文链接:https://www.haomeiwen.com/subject/jcrlohtx.html