gpt4 book ai didi

c# - 如何让 BackgroundWorker 返回一个对象

转载 作者:IT王子 更新时间:2023-10-29 03:48:18 26 4
gpt4 key购买 nike

我需要制作 RunWorkerAsync()返回 List<FileInfo> .

能够从后台 worker 返回对象的过程是什么?

最佳答案

在你的DoWork BackgroundWorker 的事件处理程序(这是后台工作发生的地方)有一个参数 DoWorkEventArgs .这个对象有一个公共(public)属性对象 Result。当您的工作人员生成结果(在您的情况下为 List<FileInfo> )时,设置 e.Result到那个,然后返回。

现在您的 BackgroundWorker 已完成其任务,它会触发 RunWorkerCompleted事件,它有一个 RunWorkerCompletedEventArgs对象作为参数。 RunWorkerCompletedEventArgs.Result将包含您的 BackgroundWorker 的结果.

例子:

private void bgw_DoWork(object sender, DoWorkEventArgs e)
{
int result = 2+2;
e.Result = result;
}

private void bgw_RunWorkerCompleted(object sender, RunWorkerCompletedEventArgs e)
{
int result = (int)e.Result;
MessageBox.Show("Result received: " + result.ToString());
}

关于c# - 如何让 BackgroundWorker 返回一个对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/939635/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com